MySQL中时间函数操作大全
在MySQL中,时间函数用于处理日期和时间相关的数据,这些函数可以帮助我们进行日期和时间的计算、比较、格式化等操作,本文将介绍MySQL中常用的时间函数及其使用方法。
1、获取当前日期和时间
要获取当前的日期和时间,可以使用以下函数:
NOW():返回当前的日期和时间。
CURDATE():返回当前的日期。
CURTIME():返回当前的时间。
示例:
SELECT NOW(); SELECT CURDATE(); SELECT CURTIME();
2、日期和时间的运算
MySQL提供了一些内置的日期和时间运算符,可以用于对日期和时间进行加减、比较等操作。
加法运算:使用+
或INTERVAL
关键字进行日期和时间的加法运算。
减法运算:使用-
或INTERVAL
关键字进行日期和时间的减法运算。
比较运算:使用>
、<
、=
、>=
、<=
等比较运算符进行日期和时间的比较。
示例:
SELECT NOW() + INTERVAL 1 DAY; -当前日期加1天 SELECT NOW() INTERVAL 1 HOUR; -当前日期减去1小时 SELECT '2022-01-01' > '2022-01-02'; -比较两个日期是否早于晚于
3、提取日期和时间的组成部分
MySQL提供了一些内置的函数,用于提取日期和时间的组成部分,如年、月、日、小时、分钟、秒等。
YEAR():返回年份。
MONTH():返回月份。
DAY():返回日期。
HOUR():返回小时。
MINUTE():返回分钟。
SECOND():返回秒。
示例:
SELECT YEAR(NOW()); -当前年份 SELECT MONTH(NOW()); -当前月份 SELECT DAY(NOW()); -当前日期 SELECT HOUR(NOW()); -当前小时 SELECT MINUTE(NOW()); -当前分钟 SELECT SECOND(NOW()); -当前秒数
4、格式化日期和时间
MySQL提供了一些内置的函数,用于将日期和时间按照指定的格式进行格式化。
DATE_FORMAT():按照指定的格式格式化日期。
TIME_FORMAT():按照指定的格式格式化时间。
DATE_ADD():在给定的日期上添加指定的时间间隔。
DATE_SUB():从给定的日期减去指定的时间间隔。
示例:
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d'); -当前日期格式化为年-月-日的形式 SELECT TIME_FORMAT(NOW(), '%H:%i:%s'); -当前时间格式化为时:分:秒的形式 SELECT DATE_ADD(NOW(), INTERVAL 1 DAY); -当前日期加1天 SELECT DATE_SUB(NOW(), INTERVAL 1 HOUR); -当前日期减去1小时
5、其他常用时间函数
除了上述提到的函数外,MySQL还提供了一些其他常用的时间函数,如:
UNIX_TIMESTAMP():返回UNIX时间戳(自1970年1月1日以来的秒数)。
FROM_UNIXTIME():将UNIX时间戳转换为日期和时间。
TO_DAYS():将日期转换为天数。
TO_SECONDS():将时间转换为秒数。
MAKEDATE():生成指定年份、月份和日期的日期值。
MAKETIME():生成指定小时、分钟和秒数的时间值。
LAST_DAY():返回指定日期所在月份的最后一天。
IFNULL():如果第一个参数为NULL,则返回第二个参数的值,否则返回第一个参数的值。
示例:
SELECT UNIX_TIMESTAMP(); -当前UNIX时间戳 SELECT FROM_UNIXTIME(UNIX_TIMESTAMP()); -UNIX时间戳转换为日期和时间 SELECT TO_DAYS('2022-01-01'); -'2022-01-01'转换为天数 SELECT TO_SECONDS('02:30:00'); -'02:30:00'转换为秒数 SELECT MAKEDATE(2022, 1, 1); -生成2022年1月1日的日期值 SELECT MAKETIME(14, 30, 0); -生成14点30分0秒的时间值 SELECT LAST_DAY('2022-01-31'); -'2022-01-31'所在月份的最后一天(结果为'2022-01-31') SELECT IFNULL(NULL, '默认值'); -如果第一个参数为NULL,则返回'默认值',否则返回第一个参数的值(结果为'默认值')
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/354435.html