我有这个SQL语句。它有效,我需要添加另一个条件。 我需要按日期排序。 出现 - 是我的日期行。
SELECT dd.caption, COUNT(t.occurence)
FROM transaction t
INNER JOIN dict_departments dd
ON dd.id = t.terminal_id
GROUP BY dd.caption
如何添加此条件:
WHERE t.occurence BETWEEN (CURRENT_DATE() - INTERVAL 1 MONTH)
到我的查询。
答案 0 :(得分:3)
试试这个:
WHERE t.occurrece BETWEEN current_date() AND dateadd(month,1,current_date())
函数 dateadd 是一个SQL SERVER函数,但该子句的其余部分是标准SQL。
答案 1 :(得分:0)
如果您想过滤1个月前到现在的日期:
WHERE (t.occurrece BETWEEN DATE_ADD(CURDATE(), INTERVAL -1 MONTH) AND CURDATE()) = 1
或
WHERE (t.occurrece BETWEEN ADDATE(CURDATE(), INTERVAL -1 MONTH) AND CURDATE()) = 1
答案 2 :(得分:0)
BETWEEN
需要两个参数,一个起点和一个终点。如果您的终点是当前时间,您有两种选择:
BETWEEN
: WHERE t.occurence BETWEEN (CURRENT_DATE() - INTERVAL 1 MONTH) AND NOW()
WHERE t.occurence >= (CURRENT_DATE() - INTERVAL 1 MONTH)