Mysql-统计本周/本月的数据

date_format()函数统计本周内数据

select subdate(curdate(),if(date_format(curdate(),’%w’)=0,7,date_format(curdate(),’%w’))-1)
获取当前日期在本周的周一

select subdate(curdate(),if(date_format(curdate(),’%w’)=0,7,date_format(curdate(),’%w’))-7)
获取当前日期在本周的周日

date_format()函数,mysql中的时间格式化函数,主要用于以不同的格式显示时间/日期数据,除了常规的时间格式,date_format()函数中还有可以获取周内的天数(%w)等针对于周数、月份的时间模板。常见格式如下:
%a    缩写星期名
%b    缩写月名
%c    月,数值
%D    带有英文前缀的月中的天
%d    月的天,数值(00-31)
%e    月的天,数值(0-31)
%f    微秒
%H    小时 (00-23)
%h    小时 (01-12)
%I    小时 (01-12)
%i    分钟,数值(00-59)
%j    年的天 (001-366)
%k    小时 (0-23)
%l    小时 (1-12)
%M    月名
%m    月,数值(00-12)
%p    AM 或 PM
%r    时间,12-小时(hh:mm:ss AM 或 PM)
%S    秒(00-59)
%s    秒(00-59)
%T    时间, 24-小时 (hh:mm:ss)
%U    周 (00-53) 星期日是一周的第一天
%u    周 (00-53) 星期一是一周的第一天
%V    周 (01-53) 星期日是一周的第一天,与 %X 使用
%v    周 (01-53) 星期一是一周的第一天,与 %x 使用
%W    星期名
%w    周的天 (0=星期日, 6=星期六)
%X    年,其中的星期日是周的第一天,4 位,与 %V 使用
%x    年,其中的星期一是周的第一天,4 位,与 %v 使用
%Y    年,4 位
%y    年,2 位
 

统计本月内数据

select date_add(date_add(last_day(now()),interval 1 day),interval -1 month)
获取当前日期所在月份的第一天

select last_day(NOW());
获取当前日期所在月份的最后一天

你可能感兴趣的:(mysql,数据库)