如何从2天前选择一列数据?

Gar*_*ary 0 mysql

目前,我正在运行以下 SQL(在 MySQL 中)查询以返回当天上午 12 点记录的记录列,直到当前时间。所以,如果今天是 2/3,我在晚上 8 点运行查询,我将返回从上午 12:01 到晚上 8 点记录的所有数据。

我的问题是;我如何检索昨天的数据?我想要相同的列,除了今天的日期,我想要昨天。

SELECT column1 
FROM db.table 
WHERE TS >= CURDATE() AND TS < CURDATE() + INTERVAL 1 DAY;
Run Code Online (Sandbox Code Playgroud)

我的第二个问题是,我将如何获取同一列,并找到整个月的记录,直到 CURDATE()?

And*_*y M 6

如果当前的 WHERE 条件指定了今天而您想要昨天,那么只需从两个表达式中减去一天。这将使第一个表达式CURDATE() - INTERVAL 1 DAY和第二个简单CURDATE()

SELECT column1 
FROM db.table 
WHERE TS >= CURDATE() - INTERVAL 1 DAY AND TS < CURDATE();
Run Code Online (Sandbox Code Playgroud)