mysql之日期时间函数

以下是 MySQL 中一些常用的日期和时间函数,包括它们的用法、参数类型和期望的结果。

NOW()

返回当前日期和时间。

  • 参数:无

  • 结果类型:DATETIME

示例:

复制代码
SELECT NOW(); 
-- 结果: '2023-04-01 12:45:31' (取决于查询时的实际日期和时间)
CURDATE()

返回当前日期。

  • 参数:无

  • 结果类型:DATE

示例:

复制代码
SELECT CURDATE(); 
-- 结果: '2023-04-01' (取决于查询时的实际日期)
CURTIME()

返回当前时间。

  • 参数:无

  • 结果类型:TIME

示例:

复制代码
SELECT CURTIME(); 
-- 结果: '12:45:31' (取决于查询时的实际时间)
DATE_ADD(date, INTERVAL expr type)

在日期 date 上加上一个时间间隔 expr

  • 参数:date 是一个日期或日期时间表达式;expr 是你希望添加的时间间隔数值;type 是间隔的类型(比如,DAY, MONTH, YEAR, HOUR, 等)。

  • 结果类型:与 date 参数类型相同

示例:

复制代码
SELECT DATE_ADD('2023-04-01', INTERVAL 1 DAY); 
-- 结结果: '2023-04-02'
DATE_SUB(date, INTERVAL expr type)

从日期 date 中减去一个时间间隔 expr

  • 参数:与 DATE_ADD 相同。

  • 结果类型:与 date 参数类型相同

示例:

复制代码
SELECT DATE_SUB('2023-04-01', INTERVAL 1 MONTH); 
-- 结果: '2023-03-01'
DATEDIFF(expr1, expr2)

返回两个日期之间的天数差。

  • 参数:expr1expr2 都是日期表达式。

  • 结果类型:INT

示例:

复制代码
SELECT DATEDIFF('2023-04-01', '2023-01-01'); -- 结果: 90
YEAR(date)

从日期 date 中提取年份。

  • 参数:date 是日期或日期时间表达式。

  • 结果类型:INT

示例:

复制代码
SELECT YEAR('2023-04-01'); -- 结果: 2023
MONTH(date)

从日期 date 中提取月份。

  • 参数:与 YEAR 相同。

  • 结果类型:INT

示例:

复制代码
SELECT MONTH('2023-04-01'); -- 结果: 4
DAY(date)

从日期 date 中提取天。

  • 参数:与 YEAR 相同。

  • 结果类型:INT

示例:

复制代码
SELECT DAY('2023-04-01'); -- 结果: 1
HOUR(time)

从时间 time 中提取小时部分。

  • 参数:time 是时间或日期时间表达式。

  • 结果类型:INT

示例:

复制代码
SELECT HOUR('12:45:31'); -- 结果: 12
MINUTE(time)

从时间 time 中提取分钟部分。

  • 参数:与 HOUR 相同。

  • 结果类型:INT

示例:

复制代码
SELECT MINUTE('12:45:31'); -- 结果: 45
SECOND(time)

从时间 time 中提取秒部分。

  • 参数:与 HOUR 相同。

  • 结果类型:INT

示例:

复制代码
SELECT SECOND('12:45:31'); -- 结果: 31

请注意,以上结果取决于实际查询执行的时间和日期。在实际的数据库操作中,通常会使用列名作为参数,而不是直接使用硬编码的日期或时间值。例如:

复制代码
SELECT YEAR(birthdate) FROM employees;

这将返回 employees 表中每位员工的 birthdate 列的年份。日期和时间函数在处理数据时非常有用,特别是当你需要对日期和时间进行操作或计算时。

相关推荐
成为大佬先秃头11 小时前
数据库连接池:Druid
数据库·mysql·druid
晓华-warm14 小时前
Warm-Flow 1.8.5 正式发布:超时自动审批、暂存功能来了!
数据库
u01368638215 小时前
将Python Web应用部署到服务器(Docker + Nginx)
jvm·数据库·python
light blue bird15 小时前
多页签Razor组支轴业务整顿组件
数据库·.net·ai大数据·多功能图表报表·web mvc + razor
wregjru15 小时前
【mysql】2.数据表操作
数据库·mysql
手握风云-15 小时前
基于 Java 的网页聊天室(三)
服务器·前端·数据库
LcVong15 小时前
MySQL 5.2/5.7 开启Binlog日志详细步骤(附验证+查看+恢复)
数据库·mysql·adb
FL4m3Y4n15 小时前
MySQL缓存策略
数据库·mysql·缓存
wsx_iot15 小时前
TDengine学习
数据库·学习·tdengine
不吃香菜的小趴菜16 小时前
mysql数据库打包与导入
数据库·mysql