sql 按年月日統計
1、每年 |
sql題 如何統計查詢一個月中每天的記錄
怎麼寫啊?寫出來啊! 比如說要查2010年3月份每天的記錄
答案
select count(*),substr(t.date,1,10) from table t where t.date like '2010-03%' group by substr(t.date,1,10)
這裡date的格式是YYYY-mm-dd hh:mm:ss
sql 資料分月統計,表中只有每天的資料,現在要求求一年中每個月的統計資料(一條
SELECT
MONTH ( 那個日期的欄位 ),
SUM( 需要統計的欄位, 比如銷售額什麼的 )
FROM
表
WHERE
YEAR ( 那個日期的欄位 ) = 2010 -- 這裡假設你要查 2010年的每月的統計。
GROUP BY
MONTH ( 那個日期的欄位 )
用SELECT語句對資料進行統計彙總
用SELECT語句對資料進行統計彙總
集合函式(聚合函式,統計函式)
為了有效處理查詢得到的資料集合,SQL Server提供了一系列統計函式.
這些函式可以實現資料集合和彙總:
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 子句指定的分組欄位有關