我想從一列中選擇最大值,而由具有多個重複值的另一個非唯一ID列進行分組。原始數據庫看起來類似:使用GROUP BY選擇多個(非聚合函數)列
mukey | comppct_r | name | type
65789 | 20 | a | 7n
65789 | 15 | b | 8m
65789 | 1 | c | 1o
65790 | 10 | a | 7n
65790 | 26 | b | 8m
65790 | 5 | c | 1o
...
這只是正常使用:
SELECT c.mukey, Max(c.comppct_r) AS ComponentPercent
FROM c
GROUP BY c.mukey;
它返回一個表,如:
mukey | ComponentPercent
65789 | 20
65790 | 26
65791 | 50
65792 | 90
我希望能夠添加其他列在不影響GROUP BY功能的情況下,在名稱和類型等列中加入如下輸出表:
mukey | comppct_r | name | type
65789 | 20 | a | 7n
65790 | 26 | b | 8m
65791 | 50 | c | 7n
65792 | 90 | d | 7n
但它總是輸出錯誤,說我需要在select語句中使用聚合函數。我應該如何去做這件事?
什麼是您預期的結果? –
補充說,對於操作,謝謝 – Dylansq