📅  最后修改于: 2023-12-03 15:35:41.213000             🧑  作者: Mango
在 MySQL 查询语句中,使用 WHERE 子句可以指定返回哪些记录。本文将介绍如何在 WHERE 子句中使用日期函数来筛选今日日期的记录。
WHERE 子句通常跟在 SELECT 语句后面。下面是使用 DATE() 函数来筛选今日日期的语法:
SELECT * FROM table_name
WHERE DATE(date_column) = CURDATE();
上面的语句中,table_name
代表要查询的表名,date_column
是表中包含日期数据的列名。DATE()
函数将日期数据从列中提取出来,CURDATE()
函数返回当前日期的值。因此,这个查询将返回表中所有日期为今天的记录。
如果你想要查询一个时间范围内的记录,可以使用 BETWEEN
运算符和日期范围。例如,下面的语句将返回 date_column
列中的日期在今天和明天之间的所有记录:
SELECT * FROM table_name
WHERE date_column BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 1 DAY);
这里使用了 BETWEEN
运算符来指定日期范围,DATE_ADD()
函数将当前日期加上了一天,从而得到明天的日期。
假设你有一张名为 students
的表,其中包含学生的名字和出生日期:
| name | birthdate | |--------|-----------| | Alice | 1995-05-01| | Bob | 1996-12-03| | Charlie| 1998-08-21| | David | 1994-10-29|
现在,我们想要查询今天过生日的学生。可以使用下面的 SQL 查询语句:
SELECT * FROM students
WHERE DATE(birthdate) = CURDATE();
这个查询将返回 Alice
的记录,因为她今天过生日。
在 MySQL 查询中使用 WHERE 子句和日期函数可以轻松筛选出今天或任何日期范围内的记录。通过使用这些技巧,程序员可以更加灵活地处理日期数据,并快速得到需要的结果。