MySQL Date 函数

本文详细介绍了MySQL中最重要的内建日期函数,包括NOW()、CURDATE()、CURTIME()、DATE()、EXTRACT()、DATE_ADD()、DATE_SUB()、DATEDIFF()和DATE_FORMAT(),并解释了它们的功能和用途。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

下面的表格列出了 MySQL 中最重要的内建日期函数:

函数

描述

NOW()

返回当前的日期和时间

CURDATE()

返回当前的日期

CURTIME()

返回当前的时间

DATE()

提取日期或日期/时间表达式的日期部分

EXTRACT()

返回日期/时间按的单独部分

DATE_ADD()

给日期添加指定的时间间隔

DATE_SUB()

从日期减去指定的时间间隔

DATEDIFF()

返回两个日期之间的天数

DATE_FORMAT()

用不同的格式显示日期/时间

 

http://www.w3school.com.cn/sql/sql_dates.asp

### MySQL `DATE()` 函数使用方法 `DATE()` 是用于提取日期部分的一个简单而有效的函数。此函数接受一个表示日期或时间的表达式作为参数,并返回只包含日期部分的结果。 对于给定的时间戳或 datetime 值,可以仅获取其日期部分: ```sql SELECT DATE('2024-12-31 18:37:59') AS only_date; ``` 上述查询会得到如下结果[^1]: | only_date | |-----------| | 2024-12-31| 当处理来自表中的数据时,假设有一个名为 orders 的表格,其中有一列 order_datetime 存储订单创建的具体时刻,则可以通过下面的方式获得每条记录对应的纯日期信息: ```sql SELECT id, DATE(order_datetime) FROM orders; ``` 这将显示每一行中 order_datetime 字段所代表的确切日期而不含具体时间。 另外值得注意的是,在某些情况下可能需要转换字符串形式的数据成为真正的日期类型以便于后续操作;这时就可以借助 STR_TO_DATE() 来完成这样的任务[^2]。 例如有这样一个场景:某张表内存在一列表达式的格式为 'YYYY-MM-DD' 类型但是被当作 VARCHAR 或 TEXT 处理着,现在想要将其转成标准 DATETIME 格式存储下来供以后更方便的操作,那么可以用到如下的 SQL 语句实现这一目标: ```sql UPDATE my_table SET real_date = STR_TO_DATE(string_date,'%Y-%m-%d'); ``` 这里 `%Y`, `%m`, 和 `%d` 分别对应四位数年份、两位月份以及两位日数占位符。 #### 关键点总结 - 提取日期部分:通过传递含有时间和/或日期成分的值来调用 `DATE()` ,从而取得不含小时分钟秒的信息。 - 数据类型转换:利用 `STR_TO_DATE()` 可以把特定模式编码后的字符序列解析回合法的日期对象,便于进一步计算或其他用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值