【发布时间】:2015-01-19 09:25:14
【问题描述】:
为什么会返回“2015-01-19”?:
SELECT date
FROM hours
HAVING date BETWEEN DATE_SUB(max(date), INTERVAL 2 DAY) AND DATE_ADD(max(date), INTERVAL 1 DAY)
何时返回“2015-01-20”和“2015-01-19”?:
SELECT date
FROM hours
HAVING date BETWEEN '2015-01-18' AND '2015-01-21'
最大日期为“2015-01-20”,“2015-01-20”和“2015-01-19”都有记录。 date 是一个日期字段。
【问题讨论】:
-
你能再解释一下吗?在哪种情况下?
hours中有什么数据? -
按工作日期的工作时间和其他用户/员工相关数据。可以包含针对一个用户/员工的特定日期的多条记录。我实际上想为日期间隔返回 * 而不仅仅是日期。当使用后一个查询时,phpmyadmin 实际上将 ORDER BY 'time' DESC 添加到查询的末尾。不知道为什么...
-
你忘了把
GROUP BY date放在HAVING date之前..