以下是 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)
返回两个日期之间的天数差。
- 参数:
expr1
和expr2
都是日期表达式。 - 结果类型:
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
列的年份。日期和时间函数在处理数据时非常有用,特别是当你需要对日期和时间进行操作或计算时。
版权归原作者 兔老大RabbitMQ 所有, 如有侵权,请联系我们删除。