Примечание: в этих примерах ваш столбец с типом данных int называется date_col
, а таблица называется test
.
Попробуйте это на SQLSERVER :
select dateadd(DAY, -90, convert(date, convert(char(8), date_col, 23)))
from test;
DATEADD
будет вычитать 90 дней с даты.
Вот DEMO
Вот как вы можете получить точный результат 20191001
select convert(char(8), dateadd(DAY, -92, convert(char(8), date_col)), 112)
from test;
Вот DEMO
Попробуйте это на DB2 :
select date(to_date(date_col, 'yyyymmdd')) - 90 days
from test;
Вот ДЕМО
Я вижу, что вы хотите точный 20191001 результат. Вот пример для DB2:
select to_char(to_date(date_col, 'yyyymmdd') - 92 days, 'yyyymmdd')
from test;
Вот пример DEMO