我要求将过去24小时与一年前的同一时期进行比较。
如果我这样做:
event_date < now() - INTERVAL 365 DAY and event_date > now() - INTERVAL 366 DAY
它没有考虑到闰年。
答案 0 :(得分:1)
一年前创建记录条件所需的where子句将是:
WHERE event_date >= DATE_SUB(DATE_SUB(NOW(), INTERVAL 1 YEAR), INTERVAL 24 HOUR)
AND event_date <= DATE_SUB(NOW(), INTERVAL 1 YEAR)
通过这种方式,你不必担心闰年。
要获取当前过去24小时的数据,您可以使用:
WHERE event_date >= DATE_SUB(NOW(), INTERVAL 24 HOUR)
AND event_date <= NOW()
答案 1 :(得分:1)
试
event_date < now() - INTERVAL 1 YEAR
AND event_date > now() - INTERVAL 1 YEAR - INTERVAL 1 DAY
或尝试
event_date BETWEEN (now() - INTERVAL 1 YEAR - INTERVAL 1 DAY)
AND (now() - INTERVAL 1 YEAR)