SQL1=""
SQL2 = SQL1 & ""
SQL3 = SQL2 & ""

解决方案 »

  1.   


    union all不行 啊 union必须拥有相同数量的列
      

  2.   

    楼主说的合并是什么概念?通常说合并都是  union 当然要合并,列数(数据类型) 都有要求。不然怎么合并
      

  3.   

    create table #tb(id int, val varchar(20))
    insert into #tb
    select 1,'a' union all
    select 2,'b'create table #tb2(id int, val varchar(20),val2 varchar(20))
    insert into #tb2
    select 1,'a','aa' union all
    select 2,'b','bb'select *,'' val2 from #tb union all
    select * from #tb2/*
    id val val2
    1 a
    2 b
    1 a aa
    2 b bb
    */
      

  4.   

    那你就group by 日期啊。连接的时候用union all不要用union要不有重复的数据会丢失。
      

  5.   

    那个问题我已经解决了,
    但是新问题出来了 我查询的时候要计算 某个字段的值的个数 怎么办计算字段值 除了这种写法 sum(case when Yyks='不孕不育' then 1 else 0 end) as 不孕还有其他的吗
      

  6.   


    select 日期,商务通,
    sum(case when Yyks='不孕不育' then 1 else 0 end) as 不孕这查询语句 提示的意思是 没有SUM的 都要进行分组  还有其他的解决方案吗 我这SQL真的很难 写了 一两天了
      

  7.   

    select 日期,商务通,(select count(1) from tb where Yyks='不孕不育') as 不孕
      

  8.   


    我放了数据测试  没发现错 但感觉 有错为什么 gruup by日期后面的 没有分组啊
      

  9.   

    上面的SQL查询出来的结果 如图:
      

  10.   


    我把数据库发给你 你看下嘛 我把要求给你 说下 真很头疼要求统计完后导出EXECL 
    你给个邮箱