有两个表
表m:
名字  时间   数量
a     1点    2
b     1点    3
a     2点    4
b     2点    4表n:
名字   1-2点总量
a
b要计算处表n中1-2点总量,并且把表n显示出来

解决方案 »

  1.   

    SELECT 名字,
    SUM(CASE WHEN 时间='1点' AND 时间='2点' THEN 数量 ELSE 0 END )AS '1-2点总量'
    FROM TB 
    GROUP BY  名字
      

  2.   

    update n set 
     [1-2点总量] = x.数量
    from (
    select 名字,sum(数量)
    from m
    where  时间 in ('1点','2点')
    group by 名字) as x
    where n.名字=x.名字select * from n
      

  3.   

    select 
    名字,
    [1-2点总量]=sum(ISNULL(数量,0))
    from m
    group by 名字
      

  4.   

    SELECT 名字,
    SUM(CASE WHEN 时间='1点' OR 时间='2点' THEN 数量 ELSE 0 END )AS '1-2点总量'
    FROM TB 
    GROUP BY  名字
      

  5.   

    select 名字,'1-2点总量'=sum(数量) from m where 时间 in('1点','2点') group by 名字
      

  6.   

    select 名字,[1-2点总量]=sum(case when 时间='1点' or 时间='2点' then 数量 else 0 end)
    from m 
    group by 名字
    order by 名字
      

  7.   


    declare @a table(名字 varchar(12), 时间 varchar(12), 数量 int)
    insert @a select
    'a',    '1点' ,   2  union all select
    'b',    '1点' ,   3 union all select
    'a',    '2点' ,   4 union all select
    'a',    '3点' ,   4 union all select      -- test
    'b',    '2点' ,   4 select 名字,[1-2点总量]=sum(数量) from @a
    where  时间 between '1点' and '2点'
    group by 名字名字           1-2点总量
    ------------ -----------
    a            6
    b            7(2 行受影响)
      

  8.   

    select 
       名字,[sum(case when 时间='1点' or 时间='2点' then 数量 else 0 end) as [1-2点总量]
    from 
       m 
    group by 
       名字
    order by 
       名字
      

  9.   

    select 
       名字,sum(case when 时间='1点' or 时间='2点' then 数量 else 0 end) as [1-2点总量]
    from 
       m 
    group by 
       名字
    order by 
       名字
      

  10.   

    select 名字,'1-2点总量'=sum(数量) 
    from TB 
    where 时间 in('1点','2点') 
    group by 名字
      

  11.   

    select 名字,
    sum(case 时间 
              when '1点' then 数量 
              when '2点' then 数量 
              else 0 
         end )as [1-2点总量]
    from tb
    group by 名字
      

  12.   

    select 
    名字,
    [1-2点总量]=sum(ISNULL(数量,0))
    from m
    group by 名字update b set 1-2点总量=sum(ISNULL(数量,0)) from m a,n b where a. 名字=b.名字
      group 
      by a.名字
      

  13.   

    select 
    名字,
    [1-2点总量]=sum(ISNULL(数量,0))
    from m
    group by 名字update b set 1-2点总量=sum(ISNULL(数量,0)) from m a,n b where a. 名字=b.名字
      group 
      by a.名字