Chapter 13. 函式 (八):QUERY › 13.5 group by / pivot
13.5 group by / pivot
在 QUERY 中最重要的功能是使用公式來完成資料透視表,可以使用 group by、pivot 兩個語法來完成,如下:
語法 | 說明 |
group by | select 欄位, 匯總函式 group by 欄位 [, 欄位...] 例如 select A,sum(B) group by A、select A,B,count(C),max(D) group by A,B,其注意事項如下:
|
pivot | select 匯總函式 pivot 欄位 [, 欄位...] 例如 select sum(B),min(B),max(B) pivot A,注意事項如下:
|
換句話說,若要將 group by 和 pivot 分別對應到資料透視表的列和欄,而 select 和 where 則是值和篩選器。接下來使用一個範例介紹輸出的格式:
- 顯示各性別、家庭人口數的會員數量
公式
- =QUERY(會員資料,"select D,count(A) group by D pivot C")
- =QUERY(會員資料,"select C,count(A) group by C pivot D")
- =QUERY(會員資料,"select C,D,count(A) group by C,D")
- =QUERY(會員資料,"select count(A) pivot C,D")
解說
四種方式的輸出格式不同,如下圖:
- =QUERY(會員資料,"select D,count(A) group by D pivot C")

- =QUERY(會員資料,"select C,count(A) group by C pivot D")

- =QUERY(會員資料,"select C,D,count(A) group by C,D")

- =QUERY(會員資料,"select count(A) pivot C,D")

有了 group by 及 pivot 兩個語法後,基本上可以完成各種資料透視表的功能,但是在輸出的格式還需要進行一些調整,而 QUERY 語法中也有相對應的功能,例如排序輸出、限制輸出列數、修改標題欄位名稱等,將在下一節有更深入的介紹!