おはよう!私は毎月の売り上げを表示するために1年にすべての月を表示する必要があるグラフを作成しています。これまでは、対応する値がある月のみを表示することができました。ここまでは、私のストアドプロシージャのクエリです。値がNULLの場合でもすべての月を表示する
SELECT (DATENAME (MONTH, DATEADD (MONTH, DATEPART(MONTH, ORDER_DATE), -1)))
AS MONTH_NAME,
SUM ([ORDER].NET_AMOUNT) AS TOTAL_SALES
FROM [ORDER], ORDER_DETAILS
WHERE [ORDER].ORDER_ID = ORDER_DETAILS.ORDER_ID
--AND (DATENAME (MONTH, DATEADD (MONTH, DATEPART(MONTH, ORDER_DATE), -1))) = (DATENAME (MONTH, DATEADD (MONTH, DATEPART(MONTH, @Order_month), -1)))
GROUP BY MONTH([ORDER].ORDER_DATE)
ORDER BY MONTH_NAME
これは、その月の売上高とその月のみを表示します。誰かが私にこれを助けることができますか?ありがとうございました!
欠落した月があなたのデータセットの一部でない場合は、何らかの形でカレンダーテーブルを使用してそのデータを導入する必要があります。 –
私はそれについて作業します。ありがとうございます! –
視力の迂回路...あなたの結合構文は30年近くも古くなっています。より「モダンな」スタイルの結合を使用することを考慮する時間がかかるかもしれません。 http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old-style-joins.aspx –