1
複数の 'count case when'文があります。すべての結果に結果を表示したくありません。SQL - 'count case'文が0を返す場合、結果を表示しません
ソース記述が4つのカウントステートメントすべてでnullを返す場合、ソース記述行を表示したくありません。私はこれを達成できるかどうかはわかりこだわっているといない
何かアドバイスをいただければ幸いですここ
は、あなたがあなたのwhere句内の述語のそれぞれが含まれるだけでした私のSQLSELECT CASE WHEN CHARINDEX('**-**', SourceDescription) > 0 then
SourceDescription
WHEN CHARINDEX('-', SourceDescription) > 0 THEN
LEFT(SourceDescription, CHARINDEX('-', SourceDescription)-1) else
SourceDescription END as 'Source',
count(case when StartDate = DATEADD(dd, DATEDIFF(dd, 0, GETDATE()) - 1, 0) THEN 1 ELSE NULL END) as 'Total',
count (case when CompletionDate = DATEADD(dd, DATEDIFF(dd, 0, GETDATE()) - 1, 0) THEN 1 ELSE NULL END)as 'Completed',
count (case when ClosedDate = DATEADD(dd, DATEDIFF(dd, 0, GETDATE()) - 1, 0) and CompletionDate is null then 1 ELSE null END)as 'Closed',
count (case when ExchangeDate = DATEADD(dd, DATEDIFF(dd, 0, GETDATE()) - 1, 0)then 1 else NULL END)as 'Exchanged'
from
CASE_record with (nolock)
inner join case_warehouse with (nolock) on CASE_record.casekey = case_warehouse.casekey
WHERE TypeCode = 'b'
group by CASE WHEN CHARINDEX('**-**', SourceDescription) > 0 then
SourceDescription
WHEN CHARINDEX('-',SourceDescription) > 0 THEN
LEFT(SourceDescription, CHARINDEX('-', SourceDescription)-1) else
SourceDescription END
少なくとも1つの基準に一致するレコードのみを返すようにしてください。 – jarlh