Mysql 时间相关

-- 当前时间
SELECT NOW(), SYSDATE(), CURRENT_TIMESTAMP(), LOCALTIME(), LOCALTIMESTAMP();
SELECT CURDATE(), CURTIME();


-- 时间格式化
SELECT DATE_FORMAT(NOW(),'%y-%c-%d %h:%i:%s');
SELECT DATE_FORMAT(NOW(),'%Y-%m-%d %H:%i:%s');
SELECT DATE_FORMAT('2016-07-12 02:10:39', '%Y-%m-%d %h:%i:%s');
SELECT STR_TO_DATE('2016-07-12 02:10:39', '%Y-%m-%d %h:%i:%s');

SET @dt = NOW();
SELECT DATE(@dt); -- 2016-07-12
SELECT TIME(@dt); -- 14:03:39
SELECT YEAR(@dt); -- 2016
SELECT QUARTER(@dt); -- 3
SELECT MONTH(@dt); -- 7
SELECT WEEK(@dt); -- 28
SELECT DAY(@dt); -- 12
SELECT HOUR(@dt); -- 14
SELECT MINUTE(@dt); -- 3
SELECT SECOND(@dt); -- 39
SELECT MICROSECOND(@dt); -- 0


-- 时间计算
SET @dt = NOW();
SELECT DATE_ADD(@dt, INTERVAL 1 DAY); -- 加1天
SELECT DATE_ADD(@dt, INTERVAL 1 HOUR); -- 加1小时
SELECT DATE_ADD(@dt, INTERVAL 1 MINUTE); -- 加1分钟
SELECT DATE_ADD(@dt, INTERVAL 1 SECOND); -- 加1秒
SELECT DATE_ADD(@dt, INTERVAL 1 MICROSECOND);-- 加1毫秒
SELECT DATE_ADD(@dt, INTERVAL 1 WEEK); -- 加1周
SELECT DATE_ADD(@dt, INTERVAL 1 MONTH); -- 加1月
SELECT DATE_ADD(@dt, INTERVAL 1 QUARTER);-- 加1季
SELECT DATE_ADD(@dt, INTERVAL 1 YEAR); -- 加1年


-- 返回星期和月份名称
SET @dt = NOW();
SELECT DAYNAME(@dt); -- Tuesday
SELECT MONTHNAME(@dt); -- July

-- 返回最后一天
SET @dt = NOW();
SELECT LAST_DAY(@dt); -- 2016-07-31

-- MySQL(时间、秒)转换函数:time_to_sec(time), sec_to_time(seconds)
SELECT TIME_TO_SEC('02:00:15'); -- 7215
SELECT SEC_TO_TIME(7215); -- '02:00:15'

-- MySQL(日期、天数)转换函数:to_days(date), from_days(days)
SELECT TO_DAYS('0000-00-00'); -- 0
SELECT TO_DAYS('2016-07-12'); -- 736522
SELECT FROM_DAYS(0); -- '0000-00-00'
SELECT FROM_DAYS(736522); -- '2016-07-12'
posted @ 2019-05-07 13:56  胡大辉  阅读(169)  评论(0编辑  收藏  举报