1. 程式人生 > >SQL一對多,子表關聯查詢

SQL一對多,子表關聯查詢

SQL一對多,子表關聯查詢


兩張表:主表A(合作伙伴),從表B(維修方式)
表關係:A:B-----1:N
表A:
只有2條合作伙伴記錄

在這裡插入圖片描述
表B:

在這裡插入圖片描述
主從表關聯欄位:partner_id

目前從表B中有兩條合作伙伴,共對應5條維修方式。
檢索要求:查出支援 【到店、郵寄、上門】的合作伙伴。

SQL寫法,可以是:

SELECT * FROM A  
where exists (select 1 from B where A.partner_id=B.partner_id and B.service_method='到店') 
 and  exists (select 1 from B where A.partner_id=B.partner_id and B.service_method='郵寄')
 and  exists (select 1 from B where A.partner_id=B.partner_id and B.service_method='上門')

檢索結果:僅出來一條 partner_id為A20181203120246889b15e990d72464a的合作伙伴。