有五个表:T1(ID,NAME,AVAG1,ACT1)
         T2(ID,NAME,AVAG2,ACT2)
         T3(ID,NAME,AVAG3,ACT3)
         T4(ID,NAME,AVAG4,ACT4)
         T5(ID,NAME,AVAG5,ACT5)
我想select 出ID,NAME,AVAG1,ACT1,AVAG2,ACT2,AVAG3,ACT3,AVAG4,ACT4,AVAG5,ACT5

解决方案 »

  1.   

    LZ 你的表关键字是什么?如果是ID的话,可以这样子啊:
    select    
    T1.ID,T1.NAME,T1.AVAG1,T1.ACT1,T2.AVAG2,T2.ACT2,T3.AVAG3,T3.ACT3,T4.AVAG4,T4.ACT4,T5.AVAG5,T5.ACT5
    where T1.ID = T2.ID
    AND   T2.ID = T3.ID
    AND   T3.ID = T4.ID
    AND   T4.ID = T5.ID
      

  2.   

    select    
           t1.ID,
           t1.NAME,
           t1.AVAG1,
           t1.ACT1,
           t2.AVAG2,
           t2.ACT2,
           t3.AVAG3,
           t3.ACT3,
           t4.AVAG4,
           t4.ACT4,
           t5.AVAG5,
           t5.ACT5
      from T1 t1,T2 t2,T3 t3,T4 t4,T5 t5
     where t1.ID = t2.ID
       AND t1.ID = t3.ID
       AND t1.ID = t4.ID
       AND t1.ID = t5.ID;真的是这么简单?
      

  3.   

    ID如果有重复,这样select会出现笛卡尔积的情况,
    如果数据很多且ID重复的很多会select出大量数据.
    这样的话语句没问题,还是表设计的不好,关键字段不能一一对应.
    如果能找2个或者3个字段联合起来,保证是唯一的,在select条件里面都写上,也可以避免.
      

  4.   

    楼上sql 是正确,就楼主所言,个人认为表结构设计不好.