Математика дат с помощью Django SQL Explorer

Я внедрил Django SQL Explorer в проект и пытаюсь построить запрос, который будет извлекать записи между сегодняшней датой и 12 месяцами до сегодняшней даты, но мне трудно понять, как SQL Explorer выполняет подсчет дат. Пока единственное, что мне удалось выяснить, это то, что SQL Explorer использует current_date для сегодняшней даты

Со:

SELECT current_date;

возвращает:

2021-10-02



Я попробовал использовать реализацию MySQL (поскольку именно эту базу данных использует мой проект):

SELECT current_date - INTERVAL 12 MONTH;

возвращает:

near "12": syntax error



Ближе всего я смог подойти к очень простой математике, которая работает только с годом и удаляет всю остальную информацию о дате:

SELECT current_date - 1;

возвращает:

2020



Кто-нибудь может помочь мне разобраться, как вернуть дату за 12 месяцев до сегодняшней даты в Django SQL Explorer?

SELECT current_date
SELECT current_date - [12 MONTH];

должно вернуться:

2021-10-02
2020-10-02

Заранее спасибо!

В синтаксисе MySQL вы должны использовать функцию DATE_SUB. например:

SELECT DATE_SUB('2021-10-02', INTERVAL 1 YEAR);

или

SELECT DATE_SUB('2021-10-02', INTERVAL 12 MONTH);

Я подозреваю, что вы используете SQLite, а не MySql, в этом случае вы хотите:

SELECT date(CURRENT_DATE, '-12 month')

Ор:

SELECT date(CURRENT_DATE, '-1 year')
Вернуться на верх