MySQL常用日期函数,日期相减,按天、周、月查询

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/sinat_28505133/article/details/75088451

MySQL日期函数


select now(); -- 获取当前时间
select DAYOFWEEK(now()); -- -- 1=星期天,2=星期一,3星期二,...
select WEEKDAY(now()); -- --0=星期一,1星期二,...
select DAYOFMONTH(now()); -- --本月的第几天(几号)
select DAYOFYEAR(now()); -- --本年的第几天(几号)
select MONTH(now()); -- --返回当前日期的月份
select DAYNAME(now()); -- --返回周几(英文形式)
select MONTHNAME(now()); -- --返回某月(英文形式)
select QUARTER(now()); -- --返回这年的第几个季度

日期相减(注意:timediff(time1,time2) 函数的两个参数类型必须相同。):


MySQL datediff(date1,date2):两个日期相减 date1 - date2,返回天数。
select datediff('2008-08-08', '2008-08-01'); -- 7
select datediff('2008-08-01', '2008-08-08'); -- -7
MySQL timediff(time1,time2):两个日期相减 time1 - time2,返回 time 差值。
select timediff('2008-08-08 08:08:08', '2008-08-08 00:00:00'); -- 08:08:08
select timediff('08:08:08', '00:00:00'); -- 08:08:08


日期相加:

select date_add(now(), INTERVAL 1 DAY_HOUR); -- 当前时间加一个小时
select date_add(now(), INTERVAL 2 DAY); -- 当前时间加两天


按日期查询:

1、查当天数据

date_format(a.create_date, '%Y-%m-%d') = date_format(now(), '%Y-%m-%d');

2、查本周数据

date_format(a.create_date, '%Y-%u') = date_format(now(), '%Y-%u')

3、查本月数据

date_format(a.create_date, '%Y-%m') = date_format(now(), '%Y-%m')


猜你喜欢

转载自blog.csdn.net/sinat_28505133/article/details/75088451