聚合函數中如果想匯總某一類數據,可以在括號中增加條件:
sum(case when 字段>0 then 1 else 0 end) as 字段
*注意:count(case when 字段>0 then 1 else 0 end) as 字段
count函數不管記錄內容是0或1,它的作用只是計算記錄數,如果你要計算次數,用sum(case when 字段>0 then 1 else 0 end) as 字段, 因為你前面計算出來的是0和1的全部次數
或者你用 count(case when 字段>0 then 1 else null end) as 字段這種寫法
/******************************************************************************/
SQL中提供的聚合函數可以用來統計、求和、求最值等等。
分類:
–COUNT:統計行數量
–SUM:獲取單個列的合計值
–AVG:計算某個列的平均值
–MAX:計算列的最大值
–MIN:計算列的最小值
SQL的執行順序:
–第一步:執行FROM
–第二步:WHERE條件過濾
–第三步:GROUP BY分組
–第四步:執行SELECT投影列
–第五步:HAVING條件過濾
–第六步:執行ORDER BY 排序