2011-04-24 6 views

답변

17

사용하십시오 CASE

COUNT(CASE WHEN Bids.Burned=0 THEN 1 END) AS 'ActiveBids', 
COUNT(CASE WHEN Bids.Burned=1 THEN 1 END) AS 'BurnedBids' 

암시적인 ELSE NULL이 있습니다. COUNTNOT NULL 값만 계산하므로 필요한 결과를 얻을 수 있습니다.

+0

감사 인사는 매력처럼 작동합니다. 짧은 것이 있습니까? lol – Danpe

+1

이 경우에는 SUM을 사용하여 case 문에 ELSE 0을 사용하여이 코드로 인해 발생하는 "집계에 의해 제거되는 Null 값"경고를 제거하는 것이 좋습니다. –

+1

@Danpe - 해당 열의 유효한 값이 '0,1' 및 가능하면'NULL '인 경우 @Danpe -'COUNT (NULLIF (Bids.Burned, 1))'및'COUNT (NULLIF (Bids.Burned, 0) . –