mysql数据库。表1 table1
ID  Name
23   A
24   B
25   C
26   D表2  table2
ID     Name 
125   B,C,F,D 
128   D,S,C
137   B,A
145   E,S,B
146   A表结构不能修改了,已经固定了。
求助,请用mysql查询语句得到下面的表格。
请写出完整的mysql查询语句,谢谢!查询结果ID      Name     NameID1  NameID2  NameID3  NameID4
125    B,C,F,D     24        25      -1       26
128    D,S,C       26        -1      25       -1
137    B,A         24        23      -1       -1
145    E,S,B       -1        -1      24       -1
146    A           23        -1      -1       -1

解决方案 »

  1.   

    查询结果
    没有排版好 得到下面的结果ID      Name        NameID1  NameID2  NameID3  NameID4
    125    B,C,F,D         24           25          -1             26
    128    D,S,C           26            -1          25             -1
    137    B,A              24            23          -1              -1
    145    E,S,B           -1           -1            24            -1
    146    A                 23            -1           -1             -1
      

  2.   

    select A.id,A.name,
    ifnull(B.id,-1),
    ifnull(C.id,-1),
    ifnull(D.id,-1),
    ifnull(E.id,-1)
    from tb2 A left join tb1 B on find_in_set(B.name,A.name)=1 
               left join tb1 C on find_in_set(C.name,A.name)=2
              left join tb1 D on find_in_set(D.name,A.name)=3
              left join tb1 E on find_in_set(E.name,A.name)=4;