-1

この行のケース式に問題があります

DATEPART(yyyy, DATEADD(mm, -5, getdate()))

この行を削除すると正常に動作しますが、削除すると、2012 年 12 月だけでなく、12 月ごとにレコードが選択されます。

あちこち探しましたがわかりません。

Select C.CustId ,
Sum(Case DATEPART(mm, I.InvoiceDate)
When DATEPART(mm, DATEADD(mm, -5, getdate())) and
     DATEPART(yyyy, DATEADD(mm, -5, getdate()))
  Then Ia.Amount 
  Else 0 End) As 'Total0'
from Invoice I 
inner join InvoiceAmtSummary Ia  on I.GUIDInvoice=Ia.GUIDInvoice
inner join Customer C on  C.GUIDCustomer=I.GUIDCustomer
group by C.CustId
4

4 に答える 4