Я пытаюсь получить счет за последние 30 дней с помощью следующего запроса -
SELECT date_occured, COUNT(*) FROM problem
WHERE date_occured >= (CURRENT_DATE - 30)
GROUP BY date_occured;
//date_occured field is of type DATE.
По сути, в своем запросе я пытаюсь сравнить только часть даты в условии date_occured >= (CURRENT_DATE - 30)
, но, похоже, тоже сравнивает время.
Я попробовал TRUNC следующим образом -
TRUNC(date_occured) >= TRUNC(CURRENT_DATE - 30)
Но при запуске запроса он никогда не возвращается.
Я тоже пробовал -
SELECT date_occured, COUNT(*) FROM problem
GROUP BY date_occured
HAVING TRUNC(date_occured) >= TRUNC(CURRENT_DATE - 30);
Опять это никогда не вернется.
Как можно сравнить только части даты из двух значений DATE в Oracle?