首先group by 的簡單說明:
group by 一般和聚合函數一起使用才有意義,比如 count sum avg等,使用group by的兩個要素:
(1) 出現在select后面的字段 要么是是聚合函數中的,要么就是group by 中的.
(2) 要篩選結果 可以先使用where 再用group by 或者先用group by 再用having
select count(a),b,c from test group by b,c;
可以看出 group by 兩個條件的工作過程:
先對第一個條件b列的值 進行分組,分為 第一組:1-5, 第二組6-8,然后又對已經存在的兩個分組用條件二 c列的值進行分組,發現第一組又可以分為兩組 1-4,5
1 SELECT 2 ConsumerId, 3 Topic, 4 COUNT(ConsumerId) 5 FROM 6 ali_ons_consumer 7 WHERE 8 STATUS != "Deleted" 9 GROUP BY 10 ConsumerId, 11 Topic 12 ORDER BY 13 ConsumerId DESC, 14 Topic DESC;
