1、GROUP BY 語句用于結合合計函數,根據一個或多個列對結果集進行分組。(也就是說group by 和聚合函數結合起來使用,要查詢的結果來沒有聚合函數則報錯:不是group by 表達式)
a、where 不能放在group by 后面使用
b、having 要和group by 連在一起使用,作用相當于where
c、where后面的條件中不能跟聚合函數,但是having 可以
示例:
正確:select t.ssdw,count(t.ssdw) from FL_SSDW t group by t.ssdw having t.ssdw='二廠';
?? select t.ssdw,count(t.ssdw) from FL_SSDW t group by t.ssdw having count(t.ssdw)=1
?? select * from gc_gd_xgnfrbsh where djgdssdw is null
錯誤:select t.ssdw,count(t.ssdw) from FL_SSDW t group by t.ssdw where t.ssdw='二廠';
?? select * from gc_gd_xgnfrbsh having djgdssdw is null