我正在尝试计算数据库表中 X 小时或 X 天内插入的行数。我已经多次尝试,但我不断收到空集响应。
我的表中的 start_stamp 列的格式如下:2013-08-07 18:18:37
我尝试过很多变体:
select * from mytable where start_stamp = now() 间隔 -1 天;
但一切都无济于事。有人可以告诉我我做错了什么吗?
而不是选择行start_stamp
is equal to now() - 1day
,你需要它所在的行大于或等于那个范围。另外,你的语法有点不对劲。 MySQL的日期运算使用column_value - INTERVAL <number> <period>
,所以你需要:
SELECT COUNT(*) AS num_new_rows
FROM mytable
WHERE start_stamp >= NOW() - INTERVAL 1 DAY
同样得到n小时前,使用INTERVAL n HOUR
# Within 3 hours...
WHERE start_stamp >= NOW() - INTERVAL 3 HOUR
描述了日期间隔算术的语法在下面的一小段中DATE_ADD()功能参考在 MySQL 官方文档中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)