1. 程式人生 > >oracle 本人與其他所有人認識的SQL

oracle 本人與其他所有人認識的SQL

首先新建測試表

1 create table DIM_IA_TEST6
2 (
3   NAME      VARCHAR2(20),
4   OTHERNAME VARCHAR2(20)
5 )

插入資料

--如果沒有重複的記錄,則不用去重
使用union all實現,第一列(name)人與其他所有人都認識的sql:

select name,othername,count(othername)over(partition by name) nums
from
(select name,othername from 
(select name,othername from
DIM_IA_TEST6 union all select othername name,name othername from DIM_IA_TEST6)t group by name,othername)

結果顯示name與所有人認識的結果(nums為認識人數):