MySQL是一种广泛运用的联系型数据库办理体系,它供给了丰厚的内置函数来处理日期和时刻数据。时刻函数在数据库操作中扮演着重要人物,尤其是在处理与时刻相关的事务逻辑时。本文将具体介绍MySQL中的时刻函数,包含其用法、参数和示例。
NOW():回来当时的日期和时刻。
CURDATE():回来当时的日期(不包含时刻)。
CURTIME():回来当时的时刻(不包含日期)。
CURRENTTIMESTAMP():回来当时的日期和时刻。
SELECT NOW(); -- 成果:'2023-04-01 12:45:31'
SELECT CURDATE(); -- 成果:'2023-04-01'
SELECT CURTIME(); -- 成果:'12:45:31'
SELECT CURRENTTIMESTAMP(); -- 成果:'2023-04-01 12:45:31'
MySQL供给了DATE_FORMAT()函数来格局化日期和时刻。该函数能够将日期和时刻转换为指定的格局。
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s'); -- 成果:'2023-04-01 12:45:31'
DATE_FORMAT()函数的占位符包含:
%Y:年份(4位数字)
%m:月份(01-12)
%d:日期(01-31)
%H:小时(00-23)
%i:分钟(00-59)
%s:秒(00-59)
MySQL供给了DATE_ADD()和DATE_SUB()函数来核算日期和时刻的加减操作。
DATE_ADD(date, INTERVAL expr type):在指定日期上加上一个时刻距离。
DATE_SUB(date, INTERVAL expr type):从指定日期中减去一个时刻距离。
SELECT DATE_ADD('2023-04-01', INTERVAL 1 DAY); -- 成果:'2023-04-02'
SELECT DATE_SUB('2023-04-01', INTERVAL 1 MONTH); -- 成果:'2023-03-01'
时刻距离expr能够是一个正数或负数,type能够是以下几种:
YEAR:年
MONTH:月
DAY:日
HOUR:小时
MINUTE:分钟
SECOND:秒
MySQL供给了YEAR()、MONTH()、DAY()等函数来提取日期和时刻的组成部分。
YEAR(date):提取年份。
MONTH(date):提取月份。
DAY(date):提取日期。
HOUR(time):提取小时。
MINUTE(time):提取分钟。
SECOND(time):提取秒。
SELECT YEAR(NOW()); -- 成果:2023
SELECT MONTH(NOW()); -- 成果:4
SELECT DAY(NOW()); -- 成果:1
SELECT HOUR(NOW()); -- 成果:12
SELECT MINUTE(NOW()); -- 成果:45
SELECT SECOND(NOW()); -- 成果:31