[英]SQL with grouping sets returns the initial table
我有一個這樣的示例表:
姓名 | 經理 | 國家 | position | 薪水 |
---|---|---|---|---|
麥克風 | 標記 | 美國 | 內容作家 | 40000 |
凱特 | 標記 | 法國 | 搜索引擎優化專家 | 12000 |
約翰 | 卡羅琳 | 美國 | 外展專家 | 32000 |
愛麗絲 | 卡羅琳 | 意大利 | 搜索引擎優化專家 | 50000 |
菲利普 | 卡羅琳 | 意大利 | 市場經理 | 30000 |
Julia | 卡羅琳 | 意大利 | 搜索引擎優化專家 | 44000 |
我正在寫一個查詢來獲取平均值。 表中按不同列分組的薪水:
SELECT
name,
manager,
country,
position,
AVG(salary)
FROM
table
GROUP BY GROUPING SETS
(manager),
(name, country),
(position),
()
但是,output 和我一開始的表基本相同,只是順序不同。 這是為什么? 如何修復此查詢以返回我需要的分組?
與文檔中的示例一樣,我相信您需要將集合括在括號中。 例如
SELECT
name,
manager,
country,
position,
AVG(salary)
FROM
table
GROUP BY GROUPING SETS
( -- Added this bracket to OP
(manager),
(name, country),
(position),
()
) -- Added this bracket to OP
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.