--本週
select sum(qty) qty from user where yearweek(createdate) = yearweek(now())
--上週
select sum(qty) qty from user where yearweek(smo.createdate) = yearweek(date_sub(now(), interval 1 week))
--本月
select sum(qty) qty from user where date_format(createdate,'%y%m')=date_format(now(),'%y%m')
--上月
select sum(qty) qty from user where date_format(createdate,'%y%m')=date_format(date_sub(now(), interval 1 month),'%y%m')
---date_sub(date,interval expr type) 函式從日期減去指定的時間間隔。
type 有以下的型別
microsecond
second
minute
hour
dayweek
month
quarter
year
second_microsecond
minute_microsecond
minute_second
hour_microsecond
hour_second
hour_minute
day_microsecond
day_second
day_minute
day_hour
year_month
---date_format(date,format) 函式用於以不同的格式顯示日期/時間資料。
格式描述
%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)
%pam 或 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 位
mysql 周 MySQL的跨年周統計問題
在mysql中,如果要查詢的表中只有日期字段,但是業務需求要按照周分組,排序的話,mysql提供了多種方法 1。date format date format date,format 函式根據format字串格式化date值。然後在分組排序就很簡單了,不過這裡有乙個問題,就是標題所示,跨年使用這種方...
mysql 今天 mysql查詢今天 昨天 上週
今天 select from 表名 where to days 時間欄位名 to days now 昨天select from 表名 where to days now to days 時間欄位名 1 7天select from 表名 where date sub curdate interval ...
mysql昨天 mysql查詢今天 昨天 上週
今天 select from 表名 where to days 時間欄位名 to days now 昨天select from 表名 where to days now to days 時間欄位名 1 7天select from 表名 where date sub curdate interval ...