原文:https://www.cnblogs.com/Fooo/p/3435687.html
SQL語句統計每天、每月、每年的資料
1、每年 select year(ordertime) 年, sum(Total) 銷售合計 from 訂單表 group by year(ordertime) 2、每月 month(ordertime) 月, group by year(ordertime), month(ordertime 3、每日 day(ordertime) 日, month(ordertime), day(ordertime) 另外每日也可以這樣: select convert(char(8),ordertime,112) dt, group by convert(char(8),ordertime,112) |
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 資料分月統計,表中隻有每天的資料,現在要求求一年中每個月的統計資料(一條sql)
SELECT
MONTH ( 那個日期的字段 ),
SUM( 需要統計的字段, 比如銷售額什麼的 )
FROM
表
WHERE
YEAR ( 那個日期的字段 ) = 2010 -- 這裡假設你要查 2010年的每月的統計。
GROUP BY
MONTH ( 那個日期的字段 )
用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 子句指定的分組字段有關