1.获取系统时间
1 2 3 4 5 6 7 8 | #获取当前系统的日期时间 SELECT NOW(); # 2021-12-22 13:50:58 #获取当前系统的日期 SELECT CURDATE(); # 2021-12-22 #获取当前系统的时间 SELECT CURTIME(); # 13:53:11 |
2. 从日期格式的字符串中提取
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | #从日期格式的字符串中获取年、月、日、时、分、秒 ,示例字符串:2021-12-22 13:50:58 # 使用函数 extract(type from data) SELECT EXTRACT(YEAR FROM '2021-12-22 13:50:58'); # 2021 SELECT EXTRACT(MONTH FROM '2021-12-22 13:50:58'); # 12 SELECT EXTRACT(DAY FROM '2021-12-22 13:50:58'); # 22 SELECT EXTRACT(HOUR FROM '2021-12-22 13:50:58'); # 13 SELECT EXTRACT(MINUTE FROM '2021-12-22 13:50:58'); # 50 SELECT EXTRACT(SECOND FROM '2021-12-22 13:50:58'); # 58 |
3. 日期增加或减少
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | #日期增加,使用函数date_add(date,INTERVAL exp type) #增加1天 SELECT DATE_ADD('2021-12-22 13:50:58', INTERVAL 1 DAY); # 2021-12-23 13:50:58 #增加1小时 SELECT DATE_ADD('2021-12-22 13:50:58', INTERVAL 1 HOUR); # 2021-12-23 14:50:58 #日期减少,使用函数date_sub(date,INTERVAL exp type) # 减少1天 SELECT DATE_SUB('2021-12-01 13:50:58', INTERVAL 1 DAY); # 2021-11-30 13:50:58 #其他间隔 INTERVAL 1 YEAR INTERVAL 1 MONTH INTERVAL 1 DAY INTERVAL 1 HOUR INTERVAL 1 MINUTE INTERVAL 1 SECOND |
4. 日期格式化
1 2 3 4 5 | #日期格式化,注意mysql中日期时间格式化字符串的写法:'%Y-%m-%d %H:%i:%s' SELECT DATE_FORMAT('2021-12-01 13:50:58', '%Y/%m/%d %H:%i:%s'); # 2021/12/01 13:50:58 # '%Y%m-%d %H:00:00',取日期和时间的整点数,分钟和秒钟为00 SELECT DATE_FORMAT('2021-12-01 13:50:58', '%Y-%m-%d %H:00:00'); # 2021/12/01 13:00:00 |