【MySql】日期时间

【MySql】日期时间

======================================

1、查询条件

2、常用函数

3、整数转日期

4、日期函数

======================================

有 datetime 类型字段 publish_time 

1、查询条件

库中存储 2004-02-04 格式 where DATE(publish_time) = '2004-02-04'

库中存储 08:08:08 格式 where DATE(publish_time) = '08:08:08'

库中存储 2004-02-04 08:08:08 格式 where TIMESTAMP(publis_time) = '2004-02-04 08:08:08'

2、常用函数

TO_DAYS(NOW()) 返回天数。10天以内的数据 where TO_DAYS(NOW()) - TO_DAYS(publish_time) <= 10

DAYOFWEEK(NOW()) 返回星期索引。1=星期天、2=星期一、3=星期二、4=星期三、5=星期四、6=星期五、7=星期六

WEEKDAY(NOW()) 返回星期索引。0=星期天、1=星期一、2=星期二、3=星期三、4=星期四、5=星期五、6=星期六

DAYOFMONTH(NOW()) 返回月份中日。在1到31范围内

DAYOFYEAR(NOW()) 返回年中的日数, 在1到366范围内

MONTH(NOW()) 返回月份,在1到12范围内

DAYNAME(NOW()) 返回星期英文全名

MONTHNAME(NOW())  返回月份英文全名

QUARTER(NOW()) 返回季度,在1到4范围内

3、整数转日期(10数字)

DATE_FORMAT(FROM_UNIXTIME(pubdate), '%Y-%m-%d %H:%i:%s')

FROM_UNIXTIME(pubtime, '%Y-%m-%d %H:%i:%s')

4、日期函数

addtime()

为日期加上指定秒数

select addtime(now(),1); -- 加1秒

adddate()

有两种用法,第二个参数直接填数字的话是为日期加上指定天数,填interval的话是为日期加上指定的interval时间

复制代码
select adddate(now(),1); -- 加1天
select adddate(now(), interval 1 day); -- 加1天
select adddate(now(), interval 1 hour); --加1小时
select adddate(now(), interval 1 minute); -- 加1分钟
select adddate(now(), interval 1 second); -- 加1秒
select adddate(now(), interval 1 microsecond); -- 加1毫秒
select adddate(now(), interval 1 week); -- 加1周
select adddate(now(), interval 1 month); -- 加1月
select adddate(now(), interval 1 quarter); -- 加1季
select adddate(now(), interval 1 year); -- 加1年
复制代码

date_add()

为日期增加一个时间间隔,这个只能使用interval时间作为参数,用法和adddate()一致

复制代码
select date_add(now(), interval 1 day); -- 加1天
select date_add(now(), interval 1 hour); -- 加1小时
select date_add(now(), interval 1 minute); -- 加1分钟
select date_add(now(), interval 1 second); -- 加1秒
select date_add(now(), interval 1 microsecond); -- 加1毫秒
select date_add(now(), interval 1 week); -- 加1周
select date_add(now(), interval 1 month); -- 加1月
select date_add(now(), interval 1 quarter); -- 加1季
select date_add(now(), interval 1 year); -- 加1年
复制代码

subtime()

为日期减去指定秒数

select subtime(now(), 1); -- 减1秒

subdate()

与adddate()函数用法一致,有两种用法,第二个参数直接填数字的话是为日期减去指定天数,填interval的话是为日期减去指定的interval时间

复制代码
select subdate(now(),1); -- 减1天
select subdate(now(), interval 1 day); -- 减1天
select subdate(now(), interval 1 hour); --减1小时
select subdate(now(), interval 1 minute); -- 减1分钟
select subdate(now(), interval 1 second); -- 减1秒
select subdate(now(), interval 1 microsecond); -- 减1毫秒
select subdate(now(), interval 1 week); -- 减1周
select subdate(now(), interval 1 month); -- 减1月
select subdate(now(), interval 1 quarter); -- 减1季
select subdate(now(), interval 1 year); -- 减1年
复制代码

date_sub()

与date_add()函数用法一致,为日期减去一个时间间隔,这个只能使用interval时间作为参数

复制代码
select date_sub(now(), interval 1 day); -- 减1天
select date_sub(now(), interval 1 hour); --减1小时
select date_sub(now(), interval 1 minute); -- 减1分钟
select date_sub(now(), interval 1 second); -- 减1秒
select date_sub(now(), interval 1 microsecond); -- 减1毫秒
select date_sub(now(), interval 1 week); -- 减1周
select date_sub(now(), interval 1 month); -- 减1月
select date_sub(now(), interval 1 quarter); -- 减1季
select date_sub(now(), interval 1 year); -- 减1年
复制代码

 

posted @   翠微  阅读(170)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示