在mysql表中,我有一个 INT(10)
列 r_insert_time
我存储时间戳的地方。
现在我想选择r\u insert\u time=today的位置 CURDATE()
```
SELECT COUNT(*) FROM rdv WHERE u_id = ? AND r_insert_time = CURDATE()
现在它返回0个结果,尽管今天有值,如“1547043955”
我也试过:
SELECT COUNT(*) FROM rdv WHERE u_id = ? AND r_insert_time >= CURDATE()
以及
SELECT COUNT(*) FROM rdv WHERE u_id = ? AND DATE(r_insert_time) = CURDATE()
和
SELECT COUNT(*) FROM rdv WHERE u_id = ? AND DATE(r_insert_time) >= CURDATE()
它们都返回0。
1条答案
按热度按时间vh0rcniy1#
首先,检查
my_dt
字段存储为YYYYMMDD
,如curdate()所需。如果是,则需要强制curdate()以数字形式而不是字符串形式输出以进行比较。尝试:
还有,我也不知道是什么
r_insert_time
是。你不是想把curdate()和my_dt
? 在这种情况下:编辑:
再看一眼,你好像在用一个历元时间戳。如果你想比较一下,你需要使用
UNIX_TIMESTAMP()
找到你的时间戳可能落在的历元时间范围。试着做一些类似的事情: