假設我有一個這樣的表:我想組根據條件對另一列一個列
Column A | Column B ---------+--------- 1 | A 1 | B 2 | A 2 | A 2 | C 3 | A 3 | A 3 | B 3 | B
我想寫一個查詢,以這樣的方式,我得到一臺組的值像這樣:
Column A | Column B ---------+--------- 1 | A 1 | B 2 | A 2 | C 3 | A 3 | B
假設我有一個這樣的表:我想組根據條件對另一列一個列
Column A | Column B ---------+--------- 1 | A 1 | B 2 | A 2 | A 2 | C 3 | A 3 | A 3 | B 3 | B
我想寫一個查詢,以這樣的方式,我得到一臺組的值像這樣:
Column A | Column B ---------+--------- 1 | A 1 | B 2 | A 2 | C 3 | A 3 | B
您正在尋找DISTINCT
。 DISTINCT
從查詢結果中刪除重複項。
select distinct * from mytable;
另一種方法是聚合。按a和b分組,可以得到結果行。但是,只有當您需要聚合時,纔會使用此功能,例如行數,總和,平均值等,因爲否則您可以使用DISTINCT
如圖所示,應該更喜歡它。
select a, b, count(*) from mytable group by a, b;
我得到一個錯誤,ORA-00913:值太多 – user3769820
然後你的查詢與我的不同。顯示你的嘗試。 –
我得到一個錯誤,ORA-00913:太多的值 – user3769820
你正在使用'oracle',所以你應該用相關標籤重新提出問題。 但是,如果您正在正確編寫列名和表名,那麼查詢應該與oracle一起使用。 – Riad
爲什麼GROUP BY在不涉及集合函數的情況下? – jarlh
請提供你是想組在什麼條件。示例表結構不能清楚地說明條件是什麼。 – jon3laze