详解MySQL的DATE()函数:从日期时间值中提取日期部分

  • Post category:MySQL

MySQL的DATE()函数是用来将一个日期时间值截取为一个日期值的函数。DATE()函数将一个日期时间值(比如:’2022-04-20 18:30:30’)截取成它所代表的日期(比如:’2022-04-20’)。

语法

DATE(date)

参数:

  • date:日期时间值,可以是一个日期时间值,也可以是一个日期时间值字符串。

示例

下面是两个使用DATE()函数的示例,它们将转换前后的值打印出来:

示例一

让我们假设有一个名为artist的表,其中包含了一个日期时间类型的列birthdate,表示歌手的出生日期。我们可以使用DATE()函数来获取所有歌手的出生日期,并且每个日期只显示日期部分,如下所示:

SELECT name, DATE(birthdate) AS birthdate FROM artist;

这将返回一个结果集,由所有歌手的姓名和出生日期组成。注意,birth日期列返回的日期值被截取为日期部分,而时间部分被忽略掉了。例如:

name birthdate
Madonna 1958-08-16
Justin Bieber 1994-03-01
Whitney Houston 1963-08-09

示例二

我们可以将DATE()函数的输出结果用来过滤一个查询的结果集合。例如,假设从orders表中查询所有在指定的日期之后在部署的订单:

SELECT order_id, order_date, customer_id
FROM orders
WHERE order_date >= DATE('2020-01-01');

注意,上面的查询中用到了DATE()函数将日期值’2020-01-01’截取为其日期部分’2020-01-01’。这个查询将返回所有在2020年1月1日之后下单的订单。

总结

总而言之,DATE()函数是MySQL中用来将日期时间值截取为一个日期值的函数。它使用简单,通过SELECT查询语句,可以很方便地过滤、筛选日期类型的数据,提高数据分析的效率。