我有这种查询:
SELECT COUNT( * )
FROM `reportinc`
WHERE `Data/ora apertura` >= '21/01/13 00:00:00'
AND `Data/ora apertura` <= '21/01/13 18:00:00'
从今天起,我必须在过去的 30 天内重复此查询。如何自动化?
而不是白天:21/01/13 我必须插入诸如 TODAY -1、TODAY -2 等之类的东西,但我自己指定了时间戳。
如何?
我有这种查询:
SELECT COUNT( * )
FROM `reportinc`
WHERE `Data/ora apertura` >= '21/01/13 00:00:00'
AND `Data/ora apertura` <= '21/01/13 18:00:00'
从今天起,我必须在过去的 30 天内重复此查询。如何自动化?
而不是白天:21/01/13 我必须插入诸如 TODAY -1、TODAY -2 等之类的东西,但我自己指定了时间戳。
如何?
SELECT TO_DAYS(NOW()) - TO_DAYS(your_table_column_name) <= 30;
或使用 DATEDIFF
mysql> SELECT DATEDIFF('1997-12-31 23:59:59','1997-12-30');
-> 1
你可以使用BETWEEN
SELECT COUNT( * )
FROM `reportinc`
WHERE `Data/ora apertura`
BETWEEN
CURRENT_DATE - INTERVAL 2 DAY
AND
CURRENT_DATE - INTERVAL 1 DAY + '18:00:00'
像这样的东西:
WHERE `Data/ora apertura` >= CURRENT_DATE - INTERVAL 2 DAY
AND `Data/ora apertura` <= CURRENT_DATE - INTERVAL 1 DAY
+ INTERVAL '18:00:00' HOUR_SECOND