表A
字段
a[长整型],b[长整型]
 记录
1,2
3,3
3,1
2,3表B
字段
a[长整型],b[文本]
 记录
1,江西
2,浙江
3,广东
4,湖南如何通过检索 表A 得到下面的记录(比如检索A中所有记录)
江西,浙江        表A 第一条记录  1,2    1对应表B 江西 2对应表B浙江
广东,广东
广东,江西
浙江,广东

解决方案 »

  1.   

    Select B.b,C.b 
    From a A Left Join b B on A.a=B.a
    Left Join b C on A.b=C.a
      

  2.   


    mysql> select * from a;
    +------+------+
    | a    | b    |
    +------+------+
    |    1 |    2 |
    |    3 |    3 |
    |    3 |    1 |
    |    2 |    3 |
    +------+------+
    4 rows in set (0.00 sec)mysql> select * from b;
    +------+------+
    | a    | b    |
    +------+------+
    |    1 | A1   |
    |    2 | A2   |
    |    3 | A3   |
    |    4 | A4   |
    +------+------+
    4 rows in set (0.00 sec)mysql> select B.b,C.b From a A left join b B on A.a=B.a Left join b C on A.b=C.a
    ;
    +------+------+
    | b    | b    |
    +------+------+
    | A1   | A2   |
    | A3   | A3   |
    | A3   | A1   |
    | A2   | A3   |
    +------+------+
    4 rows in set (0.00 sec)MSSQL与ACCESS中也可以用这个语句.
      

  3.   

    select B.b,C.b From a A left join b B on A.a=B.a Left join b C on A.b=C.a
    能在vb里通过吗?  cnn.execute
      

  4.   


    SELECT N.a,M.f1,N.b FROM (SELECT A.b,B.b AS f1 FROM A LEFT JOIN B ON B.a=A.a) AS M LEFT JOIN B AS N ON M.b=N.a
      

  5.   

    要是SQL SERVER的话,就更简单了。
      

  6.   

    to lxy19851204:
    没注意,隔天散分吧。