簡體   English   中英

MySQL-如何通過LEFT JOIN實現所需的輸出?

[英]MySQL - How do I achieve my desired output with LEFT JOIN?

以下查詢:

   SELECT friendship.dom, friendship.sub,
          user.id, user.fname, user.lname
     FROM friendship
LEFT JOIN user ON friendship.dom = user.id

結果如下:

dom  sub  id  fname  lname 
---------------------------
2    1    2   Seun   Soti
1    2    1   Donal  Lynch

但是我如何使輸出看起來像:

dom  sub  id_dom  fname_dom  lname_dom  id_sub  fname_sub  lname_sub
----------------------------------------------------------------------
2    1    2       Seun       Soti       1       Donal      Lynch
1    2    1       Donal      Lynch      2       Seun       Soti

我只需要兩個用戶( domsub )都包括在輸出中。

這個怎么樣:

SELECT 
  f.dom, f.sub,
  d.id dom_id, d.fname dom_fname, d.lname dom_lname,
  s.id sub_id, s.fname sub_fname, s.lname sub_lname
FROM friendship f
LEFT JOIN user d ON f.dom = d.id
LEFT JOIN user s ON f.sub = s.id

嘗試這個:

SELECT friendship.dom, friendship.sub, user.id AS id_dom, ...
FROM friendship
LEFT JOIN user ON friendship.dom = user.id

那應該為您工作。 HTH

 SELECT friendship.dom, friendship.sub,
      user.id, user.fname, user.lname,
      u1.id, u1.fname, u1.lname
 FROM friendship 
 FROM friendship
 LEFT JOIN user ON friendship.dom = user.id 
 LEFT JOIN user as u1 ON friendship.sub = u1.id

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM