【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、整数转日期

DATE_FORMAT(FROM_UNIXTIME(pubdate), '%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 @ 2020-02-04 08:01  翠微  阅读(164)  评论(0编辑  收藏  举报