现在有三个表A B C
A表字段有id,a1,a2  ;B表字段有id,b1,b2 ;C表字段有id,c1,c2 
id自增主键。
现在需要把a1.a2.b1,b2,c1,c2 放在同一个表单中。但是a1,a2是按照id的降序排列,b1,b2是按照id降序,c1,c2同上。因为各表数据各不同,所以只要各表中降序排列的前200个数据,形成一个表单。
自己试了很多次,还是没有完成这个SQL语句,求指导。

解决方案 »

  1.   

    top   order by
    union all
      

  2.   


    ;with t1 as 
    (select row_number() over(order by id desc) as arowid,a1,a2 from A表)
    ,t2 as
    (select row_number() over(order by id desc) as browid,b1,b2 from B表)
    ,t3 as
    (select row_number() over(order by id desc) as crowid,c1,c2 from C表)select * from t1 a 
    left outer join t2 b on a.arowid=b.browid
    left outer join t3 c on a.arowid=c.crowid
      

  3.   

    select top(200) t1.a1,t1.a2,t2.b1,t2.b2,t3.c1,t3.c2 into tabNew from A t1,B t2,C t3 
    说明:tabNew为一个不存在的表,会自动帮你创建。你试试看,看可不可以!
      

  4.   

    select * from table1
    union all
    select * from table1
    union all
    select * from table1
      

  5.   

    --建立三个临时表
    select top 200 a1,a2,identity(int,1,1) id into A1 from A order by id desc
    select top 200 b1,b2,identity(int,1,1) id into B1 from B order by id desc
    select top 200 c1,c2,identity(int,1,1) id into C1 from C order by id desc
    --利用种子id查询
    select * from A1,B1,C1 where A1.id=B1.id and B1.id=C1.id
    --删除临时表
    drop talbe A1,B1,C1
      

  6.   

    CREATE TABLE #temp1(id INT IDENTITY, a1 INT, a2 INT)
    CREATE TABLE #temp2(id INT IDENTITY, b1 INT, b2 INT)
    CREATE TABLE #temp3(id INT IDENTITY, c1 INT, c2 INT)
    INSERT #temp1 SELECT 1, 1 UNION ALL SELECT 2, 2
    INSERT #temp2 SELECT 1, 1 UNION ALL SELECT 2, 2
    INSERT #temp3 SELECT 1, 1 UNION ALL SELECT 2, 2
    GO
    --SQL:
    SELECT * FROM (SELECT TOP(200) a1, a2 FROM #temp1 ORDER BY ID DESC) a
    UNION ALL
    SELECT * FROM (SELECT TOP(200) b1, b2 FROM #temp2 ORDER BY ID DESC) b
    UNION ALL
    SELECT * FROM (SELECT TOP(200) c1, c2 FROM #temp3 ORDER BY ID DESC) c
    /*
    2 2
    1 1
    2 2
    1 1
    2 2
    1 1
    */
      

  7.   

    我自己表述错误,汇总后的表的字段是a1,a2,b1,b2,c1,c2 。而不是把他们的内容融合在一起。
      

  8.   

    我自己表述错误,汇总后的表的字段是a1,a2,b1,b2,c1,c2 。而不是把他们的内容融合在一起。
      

  9.   


    能不能只用一个sql语句,我是建立一个gridview,里面的sql语句应该只是一个吧。