如何在我的查询中添加日期条件?

时间:2015-05-14 02:52:38

标签: mysql sql

我有这个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)

到我的查询。

3 个答案:

答案 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需要两个参数,一个起点和一个终点。如果您的终点是当前时间,您有两种选择:

  1. 使用BETWEEN
  2. WHERE t.occurence BETWEEN (CURRENT_DATE() - INTERVAL 1 MONTH) AND NOW()

    1. 使用简单的比较运算符:
    2. WHERE t.occurence >= (CURRENT_DATE() - INTERVAL 1 MONTH)