# 日期函数
SELECT CURRENT_DATE() FROM DUAL; -- 当前日期
SELECT CURRENT_TIME() FROM DUAL; -- 当前时间
SELECT CURRENT_TIMESTAMP() FROM DUAL; -- 当前时间戳 -> 日期+时间
SELECT NOW() FROM DUAL; -- 与上一条语句返回值一样
CREATE TABLE mes(
id INT,
content VARCHAR(30),
send_time DATETIME);
INSERT INTO mes
VALUES(1,'北京新闻',CURRENT_TIMESTAMP()),
(2,'上海新闻',NOW()),
(3,'西安新闻',CURRENT_TIMESTAMP());
SELECT * FROM mes;
SELECT id, content, DATE(send_time) FROM mes; -- 只返回日期
-- add日期相加,interval间隔10minute,10min之内发行
SELECT * FROM mes
WHERE DATE_ADD(send_time,INTERVAL 10 MINUTE) >= NOW();
-- sub日期相减,10min内发行
SELECT * FROM mes
WHERE DATE_SUB(NOW(),INTERVAL 10 MINUTE) <= send_time;
-- 求两个日期相差多少天,前面减后面
SELECT DATEDIFF('2024-03-08','2000-07-13') FROM DUAL;
-- 如果你能活80岁,求出能活多少天
SELECT DATEDIFF(
DATE_ADD('2000-07-13',INTERVAL 80 YEAR),
NOW()) FROM DUAL;
-- interval可以是year,day,minute,second,hour等
-- 这几个函数日期类型可以是date,datetime,timestamp
SELECT YEAR(NOW()) FROM DUAL; -- YEAR|MONTH|DAT,只返回对应部分
-- 函数返回1970-1-1到现在的秒数
SELECT UNIX_TIMESTAMP() FROM DUAL;
-- 把UNIX_TIMESTAMP格式的日期转换为时间戳
SELECT FROM_UNIXTIME(1709866486) FROM DUAL;
MySQL-日期函数
最新推荐文章于 2024-07-18 20:04:15 发布