获取所有供应商编号对,以便将两个供应商并置

时间:2019-07-05 19:45:09

标签: sql select db2

练习是: 获取所有供应商编号对,以使两个供应商并置

输出应为

SA   SB
---  ---
S2   S3
S1   S4

这是该表:

SELECT * FROM suppliers 



SNO   SNAME      STATUS CITY       
----- ---------- ------ ---------- 
S1    Smith          20 London     
S2    Jones          10 Paris      
S3    Blake          30 Paris      
S4    Clark          20 London     
S5    Adams          30 Athens 

已选择5条记录。

1 个答案:

答案 0 :(得分:0)

您可以在city列上自行加入表。为了避免重复的对(例如s2-s3和s3-s2),请添加一个条件,使第一个对应该始终为“较小”对:

SELECT a.sno AS sa, b.sno AS sb
FROM   suppliers a
JOIN   suppliers b ON a.city = b.city AND a.sno < b.sno