簡體   English   中英

Mysql連接同一表的多個條目

[英]Mysql Join same table multiple entries

我有帶有以下字段和值的表“ meta”:

 •col1  •col2 •col3   •REL •JOIN
   1     John  Smith       1    0   
   2     Peter Pan         2    0  
   3     Brat  Pitt        3    0  
   4     Sarah Palin       1    00 
   5     King  David       2    00
   6     Coco  Sha         3    00
   7     Santa Claus       3    00

我想遍歷並顯示一個列表,該列表結合了來自同一張表的數據,如下所示:

•col1  •col2 •col3 •REL •JOIN  •col1  •col2 •col3  •REL •JOIN

   1    John  Smith  1    0      1    John  Smith   1    0

   1    John  Smith  1    0      2    Peter Pan     2    0

   1    John  Smith  1    0      3    Brat  Pitt    3    0

   4    Sarah Palin  1    00     4    Sarah Palin   1    00

   4    Sarah Palin  1    00     5    King  David   2    00

   4    Sarah Palin  1    00     6    Coco  Sha     3    00

   4    Sarah Palin  1    00     7    Santa Claus   3    00

如果* REL ='1',則在下一個聯接中將col1,col2和col3與* REL ='1'一起使用
* JOIN是最終加入的關鍵

您可以按以下方式實現上述連接邏輯。

    select a.col1, a.col2, a.col3, a.REL, a.joinKey,
           b.col1, b.col2, b.col3, b.REL, b.joinKey
      from meta a join meta b on a.joinKey = b.joinKey
      where a.REL = 1;

為此設置了一個SQL提琴。 SQL小提琴

看起來您正在嘗試加入col1的第一個字符

select a.*, b.*
from meta a
join meta b on a.col1 = left(b.col1,1)

暫無
暫無

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

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