2011-10-27 5 views
0

J'ai cette requêtegroupe par requête et SQL Server 2008

select SUM(Qty) as Qty 
from WorkTbl group by Status 
having Status = 'AA' or Status = 'BB' 

cette requête retourne 2 lignes (100 et 500)

Comment résumer ces 2 lignes?

Répondre

3

Retirez le GROUP BY et utilisez WHERE au lieu de HAVING?

select SUM(Qty) as Qty 
from WorkTbl 
where Status = 'AA' or Status = 'BB' 

Ou, s'il y a plus à votre requête, et que vous souhaitez conserver la majeure partie de la structure actuelle, le mettre dans un sous-requête (ou un CTE):

select SUM(Qty) from (
select SUM(Qty) as Qty 
from WorkTbl group by Status 
having Status = 'AA' or Status = 'BB' 
) t 

(Nous devons inclure le t à la fin, puisque chaque source de ligne dans la clause from doit avoir un nom - cela pourrait être n'importe quoi)