sql:可以在select中%curdate%吗

nc1teljy  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(296)

我正在尝试使用“yyyy-mm-dd”格式的sql curdate()来选择昨天的项目,但时间列的格式是“yyy-mm-dd hh-mm-ss”。
是否可以将curdate设置在%%之间,类似于本例中的内容(显然不起作用); SELECT * FROM table WHERE created_at LIKE % CURDATE() - INTERVAL 1 day % 或者,如果没有使用curdate的语法变体&同样有效,请推荐另一种方法,如果sql包中有任何技巧的话。

tag5nh1u

tag5nh1u1#

不要将字符串函数用作字符串!如果你想要昨天,你可以使用:

where created_at >= current_date - interval 1 day and
      created_at < current_date

另外,这可以使用索引。
或者,您可以将其简化为:

where date(created_at) = current_date - interval 1 day

这个版本不使用索引 created_at .

相关问题