MySQL 用 CURDATE()-1 算不出来昨天是 2024-02-29,这个算是问题吗?

72 天前
 raozhufa88

当我执行这个跳进 WHERE DATE(create_time)= CURDATE()-1 发现数据为空。这是每个月初一号都算不了还是只针对 2 月底呢?

2014 次点击
所在节点    程序员
9 条回复
aduangduang
72 天前
subdate(curdate(), 1)
kcccc
72 天前
这样算本来就有问题。
运行一下 select CURDATE()-1 ,就明白为什么。
Huelse
72 天前
pg 试了下没问题
select now() - interval '1 day';
select current_date - interval '1 day';
alteremliu
72 天前
noahlias
72 天前
MuSeCanYang
72 天前
pgsql 和 sql server 没问题
raozhufa88
72 天前
@aduangduang 这样就行了。。
raozhufa88
72 天前
@kcccc 的确 我的使用错误了
hero1874
71 天前
CURDATE()-1 会转成整数减一 , 因为-1 它不知道你的意思是少一天、少一个月、少一年这样 。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1019673

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX