一、每一年
sql
select year(ordertime) as year,count(*) as count from 訂單表 group by year(ordertime)
二、每個月
數組
select year(ordertime) as year, month(ordertime) as month, sum(Total) as sun_total from 訂單表 group by year(ordertime), month(ordertime)
三、每日
函數
select year(ordertime) as year, month(ordertime) as month, day(ordertime) as day, sum(Total) as sum_total from 訂單表 group by year(ordertime), month(ordertime), day(ordertime)
另外每日也能夠這樣:
spa
select convert(char(8),ordertime,112) dt, sum(Total) 銷售合計 from 訂單表 group by convert(char(8),ordertime,112)
例一:code
查2010年3月份天天的記錄(這裏date的格式是YYYY-mm-dd hh:mm:ss)排序
select count(*),substr(t.date,1,10) from table t where t.date like '2010-03%' group by substr(t.date,1,10)
例二:
ci
sql 數據分月統計,表中只有天天的數據,如今要求求一年中每月的統計數據(一條sql)table
SELECT MONTH ( 那個日期的字段 ), SUM( 須要統計的字段, 好比銷售額什麼的 ) FROM 表 WHERE YEAR ( 那個日期的字段 ) = 2010 -- 這裏假設你要查 2010年的每個月的統計。 GROUP BY MONTH ( 那個日期的字段 )
用SELECT語句對數據進行統計彙總class
avg ([ALL|DISTINCT]列名) 求指定數字字段的平均值 sum ([ALL|DISTINCT]列名) 求指定數字字段的總和 max([ALL|DISTINCT]列名) 求指定數字字段中最大值 min ([ALL|DISTINCT]列名) 求指定數字字段中最小值 count([ALL|DISTINCT]列名) 求知足條件記錄中指定字段不爲空的記錄個數 count(*) 求知足條件記錄總數
********************************************************************************************** 用GROUP BY子句對記錄分類統計彙總 格式: GROUP BY 分組字段名列表[HAVING 條件表達式] 功能:按指定條件對指定字段依次分組進行統計彙總 注: 使用GROUP BY 的語句仍可用ORDER BY子句排序 但必須在GROUP BY以後可使用別名但不容許對SELECT沒指定的列排序 HAVING子句是對分組統計後的查詢結果進行篩選. 使用GROUP BY 的select語句仍可用WHERE子句指定條件 ********************************************************************************************** 說明: Select 指定的字段必須包含且只含GROUP BY子句中指定的分組字段(能夠爲它指定別名), 其餘必須是由集合函數組成的一個或多個計算列,統計函數中所使用的列不受限制. GROUP BY子句中不容許使用字段或計算列的別名,可直接使用表達式. GROUP BY子句指定表達式時,select指定的字段中能夠不包括該表達式. HAVING子句不容許使用別名 HAVING子句必須和GROUP BY一塊兒使用,且設置的條件必須與GROUP BY 子句指定的分組字段有關