2009-02-07 57 views
0

說我有2個表,A和B,每個實體可能有多個B實體,在一種情況下,如果我想獲得某些特定A的所有B,我可以用一個簡單的左連接SQL左連接和結果中的重複

select A.id aid,B.id bid from A 
left join B on B.aid = A.id 
where A.id = 1 

,它會返回一個結果集,像

aid bid 
1  1 
1  2 
1  3 

正如你所看到的第一列,所有1的是有點重複。是否可以修改SQL語句讓他返回結果,如

aid bid 
1  1,2,3 

換句話說就是將所有出價作爲一個實體鏈接在一起?

還什麼,如果有另一臺C,且每個A可以有多個C的,怎麼我讓SQL返回設置像

aid bid cid 
    1  1,2,3 1,2 

,而不是

aid  bid cid 
    1  1  1 
    1  2  1 
    1  3  1 
    1  1  2 
    1  2  2 
    1  3  2 

結果非常感謝你許多!

回答