列組合資料去重複值
A B 10
B A 10
A C 20
A D 20
D A 20
對A列資料和B列資料組合相同剔重,如前二行資料,a列值與b列值互等,則保留一行即可,去重後資料結果如下:
A B 10
A C 20
A D 20
表初始化指令碼如下:
SQL> create table t as
2 SELECT 'A' A,'B' B, '10' C FROM DUAL UNION ALL
3 SELECT 'B','A', '10' FROM DUAL UNION ALL
4 SELECT 'A','C', '20' FROM DUAL UNION ALL
5 SELECT 'A','D', '20' FROM DUAL UNION ALL
6 SELECT 'D','A', '20' from dual;
表已建立。
SQL> select * from t;
A B C
- - --
A B 10
B A 10
A C 20
A D 20
D A 20
解決方法一:
SQL> SELECT least(a, b), greatest(a, b), MAX(c)
2 FROM t
3 GROUP BY least(a, b), greatest(a, b);
L G MA
- - --
A C 20
A D 20
A B 10
解決方法二:
SQL> SELECT MIN(a), MAX(b), MAX(c)
2 FROM t
3 GROUP BY CASE
4 WHEN a < b THEN
5 a || chr(10) || b
6 ELSE
7 b || chr(10) || a
8 END;
M M MA
- - --
A B 10
A C 20
A D 20
解決方法三:
SQL> SELECT a, b, c
2 FROM (SELECT a,
3 b,
4 c,
5 row_number() over(PARTITION BY c, greatest(a, b), least(a, b
) ORDER BY c) rn
6 FROM t)
7 WHERE rn = 1
8 ;
A B C
- - --
A B 10
A C 20
A D 20
SQL>
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21251711/viewspace-1280607/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL資料庫行去重複和列去重複MySql資料庫
- 陣列合並且去重&向一個陣列新增一條資料(重複的就不新增)&陣列物件去重處理陣列物件
- 在組合中找到重複的資料
- iOS 模型陣列去重複iOS模型陣列
- C# datatable中重複資料去重C#
- 【力扣】組合總和3(組合的去重)力扣
- java陣列中重複元素的去重Java陣列
- Java List集合去重、過濾、分組、獲取資料、求最值、合併、排序、跳資料和遍歷Java排序
- es6陣列去重複陣列
- Oracle:重複資料去重,只取最新的一條資料Oracle
- 面試必問的陣列去重複面試陣列
- 無重複字串的排列組合字串
- 第 10 節:複合型別 1.4 氣泡排序與陣列去重型別排序陣列
- devexpress report 合併列具有重複值的單元格devExpress
- JS陣列去重 – JSON陣列去重陣列JSON
- javascript去掉陣列中重複的值JavaScript陣列
- C# 移除陣列中重複資料C#陣列
- 陣列去重陣列
- MySQL去重資料MySql
- 一句程式碼搞定陣列去重(去除陣列中的重複元素)陣列
- es6陣列去重(連重複的物件也可以去掉)陣列物件
- python對excel檔案中指定表格的指定列資料進行去重複操作。PythonExcel
- PHP把MYSQL重複ID二維陣列重組為三維陣列PHPMySql陣列
- php多維陣列去除重複值的方法PHP陣列
- js如何刪除陣列中重複的值JS陣列
- 陣列物件去重陣列物件
- JavaScript陣列去重JavaScript陣列
- JavaScript 陣列去重JavaScript陣列
- js陣列去重JS陣列
- C#資料去重C#
- java去掉陣列中重複的資料和遍歷資料Java陣列
- 陣列及陣列物件操作 ----------包括排序,去重,合併,翻轉等陣列物件排序
- 陣列 重複不新增 、相同刪除,相同賦值陣列賦值
- SQL查詢列(欄位)重複值及操作--整理SQL
- js 中基礎資料結構陣列去重問題JS資料結構陣列
- Cannot set property ‘dataIndex‘ of undefined 大資料關係圖報錯,賦予的資料有重複,去重AIIndexUndefined大資料
- mysql資料去重和排序MySql排序
- javascript之陣列去重JavaScript陣列