我正在尝试使用“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包中有任何技巧的话。
SELECT * FROM table WHERE created_at LIKE % CURDATE() - INTERVAL 1 day %
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 .
created_at
1条答案
按热度按时间tag5nh1u1#
不要将字符串函数用作字符串!如果你想要昨天,你可以使用:
另外,这可以使用索引。
或者,您可以将其简化为:
这个版本不使用索引
created_at
.