有两张表
No1表:有5个字段(id,A,B,C,Fid)
No2表:有4个字段(id,a,b,c)
其中No2表中的id是No1表中Fid的外键问题:查询出No1表中的id,A,B,Fid,以及No2表中的id,a,c
查询条件:No1表中的   C = "张三" ,No2表中的  b = "李四"大前提:用最优化的查询方式查询

解决方案 »

  1.   

    select a.*,b.*
    from no1 a inner join no2 b on a.fid=b.id
    where a.c='张三' and b.b='李四'
      

  2.   

    SELECT TMP1.*,TMP2.* 
    FROM 
    (SELECT * FROM NO1 WHERE C='张三') TMP1 INNER JOIN (SELECT * FROM NO2 WHERE B='李四') TMP2 
    ON TMP1.FID=TMP2.ID;
      

  3.   

    select
      a.*,'
      b.*
    from NO1 a,NO2 b
    where a.fid=b.id
    and a.C='张三' and b.b='李四'
      

  4.   

    SELECT * 
    FROM 
    (SELECT id,A,B,Fid FROM NO1 WHERE C='张三') TMP1 INNER JOIN (SELECT id,a,c FROM NO2 WHERE B='李四') TMP2 
    ON TMP1.FID=TMP2.ID;
      

  5.   


    在 MySQL 上面这个应该是最优化的,表与表进行连接会比较快的。
      

  6.   

    select T1.*,T2.*
    from
    (
    select *
    from no1
    where c='张三' 
    )T1,
    (
    select *
    from no2
    where b='李四' 
    )T2
    where T1.fid=T2.id