mysql时间相关类型:
date //年月日 2023-1-15 time //时分秒 10:10:10 datetime //年月日时分秒 2023-1-15 10:10:10 timestamp //时间戳,插入,更新时自动写入当前时间
注意mysql的时间格式,日期尽量使用 yyyy-mm--dd的形式,虽然其他的日期形式也行,但这是首选的,排除多义性。
例如04/05/06可以是2004-05-06 也可以是2006-05-04.
date 和datetime
//datetime复制给date 时间部分微00:00:00 日期一样。
CREATE TABLE date1 ( `date` DATE ); INSERT INTO date1 VALUES ('2023-1-15 10:10:10'); SELECT * FROM date1; //结果为2023-1-15
//date和datetime比较
//mysql仅将date和datetime中的年月日比较,忽略了时间。
//通常使用Date函数来比较
Date('2023-1-15 10:10:10') = '2023-1-15'
Date函数来取时间类型的年月日, Time函数来取时间类型的时分秒, Year函数返回年份, Month返回月份。
select * from 表 where Year(`date`) = 2023 AND Month(`date`) = 9
//返回时间在九月份以内的行
相关函数
CURRENT_DATE() //当前日期 CURRENT_TIME() //当前时间 CURRENT_TIMESTAMP //当前时间戳 DATE(datetime) //返回datetime的日期部分 DATE_ADD(date2, INTERVAL d_value d_type) //在date2上增加日期或时间
SELECT CURRENT_DATE() FROM DUAL; //2023-01-15 SELECT CURRENT_TIME() FROM DUAL; //20:15:00 SELECT CURRENT_TIMESTAMP() FROM DUAL; //2023-01-15 20:15:23 SELECT DATE('2023-1-15 10:10:10') FROM DUAL; //2023-01-15 SELECT DATE_ADD('2023-1-15 10:10:10', INTERVAL 2 YEAR) FROM DUAL; //2025-01-15 10:10:10 SELECT DATE_ADD('2023-1-15 10:10:10', INTERVAL 2 MINUTE) FROM DUAL; //2023-01-15 10:12:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
DATE_SUB(date2, INTERVAL d_value d_type) //date2减去给定的时间 NOW() //返回当前时间 DATEDIFF(date1, date2) //两个时间差的天数,date1 - date2,结果可以为负 UNIX_TIMESTAMP() //返回1907-1-1到现在的秒数
FROM_UNIXTIME() //回复unix_timestamp
SELECT DATE_SUB('2023-1-15 10:10:10', INTERVAL 2 YEAR) FROM DUAL; //2021-01-15 10:10:10 SELECT DATE_SUB('2023-1-15 10:10:10', INTERVAL 2 MINUTE) FROM DUAL; //2023-01-15 10:08:10 SELECT NOW() FROM DUAL; //2023-01-15 20:30:33 SELECT DATEDIFF('2023-1-15 10:10:10', '2023-1-10 10:0:0'); //5
SELECT UNIX_TIMESTAMP() FROM DUAL; //1673785871
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP()) FROM DUAL; //2023-01-15 20:31:52
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d') FROM DUAL; //2023-01-15
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d %H:%i:%s') FROM DUAL; //2023-01-15 20:33:07
标签:10,15,--,mysql,时间,DUAL,2023,DATE,SELECT From: https://www.cnblogs.com/dadishi/p/17054084.html