select * from m left outer join n on ......

解决方案 »

  1.   

    --要求连起来为a,b,c,d,记录数20条,c、d列缺少的记录用null补上。select id=identity(int,1,1),a,b into #t1 from m
    select id=identity(int,1,1),c,d into #t2 from n
    select a,b,c,d from #t1 a full join #t2 b on a.id=b.id
    drop table #t1,#t2
      

  2.   

    --就是原来有2列60行的数据,显示成6列20行的形式这句就不知道是什么意思了.
    ===========================
    这句和前面的意思一样,只不过m,n为同一个表了。必须用临时表,一条语句写不出来吗?m表有price,icount两列,2000多行,
    我想显示成price,icount,price,icount,price,icount六列的形式,记录数就变成700多了
      

  3.   

    搞不懂什么叫条件连接。a b 与cd字段什么关系也没有吗,我连题意都理解不了。汗
      

  4.   

    楼上,是无条件连接,即连接时不加on 和where 子句
      

  5.   

    怎么会是一样呢? 你第一句的意思是两个表合起来,不足的部分用NULL第二句记录数却少了,不知道少的依据是什么?
      

  6.   

    不用临时表写不出来,SQL是关系型数据库,没有关系处理不了.
      

  7.   

    哦,我的题意没说明,主要是想解决这个问题:
    ====================================
    m表有price,icount两列,2000多行,
    我想显示成price,icount,price,icount,price,icount六列的形式,记录数就变成700多了
    ======================================
    我假想成三个表了,看用一条语句能不能实现。
    这么说两个表间没有条件是不能实现连接了,OK!谢谢各位!
      

  8.   

    select id=identity(int,1,1),price,icount into #t1 from mselect a.id,a.price,a.icound,b.price,b.icount,c.price,c.icount
    from #t1 a join #t1 b on a.id=b.id-1
         join #t1 c on a.id=c.id-2
    where a.id%3=1
      

  9.   

    哪你前面也得有个别的字段吧,不至于是
    price  icount
    50     3
    30     2
    40     5
    .......--2000多行---------------这样吧,你看CSDN文档中心有JSS一篇文章,专门讲这个的
      

  10.   

    前面没有别的字段,price表示出价,icount表示出价次数,这个表也是分组统计出来的一个临时表。我去看看那篇文章。