select name, sum(shuliang) as shuliang  from Tab where Flag = 1 group by name如何知道那些参与求和计算的记录的ID,最好一句SQL能搞定

解决方案 »

  1.   

    select ID from Tab where Flag=1
      

  2.   

    select distinct id from Tab  where flag=1 
      

  3.   

    Flag=1的记录Id不都参与计算了吗?
      

  4.   

    select ID from Tab where Flag=1
      

  5.   

    select distinct id from Tab where Flag = 1
      

  6.   

    select name
     , sum(shuliang) as shuliang  
      ,stuff((
    select ','+cast([id] as varchar) as [text()]
    from Tab
    where t1.name=name
    for xml path('')
    ),1,1,'') as CalColumnIds
    from Tab 
    where Flag = 1 
    group by name 
      

  7.   

    SELECT ID FROM TAB WHERE NAME IN
    (select name from Tab where Flag = 1 group by name)AS T