SQLserver2008R2使用しています。
お店の日別予算・当日売上・前年売上を表示させようとしています。
●現状
日付 店舗 予算 実績 前年
20170201 A 110000 100000 90000
20170202 A 100000 70000 60000
20170203 A 100000 120000 150000
/
/
20170228 A 120000 120000 150000
●希望
日付 店舗 予算 実績 前年
20170201 A 110000 100000 90000
20170202 A 100000 70000 60000
20170203 A 100000 120000 150000
/
/
20170228 A 120000 120000 150000
20170228 A 0 0 120000
select * from yosan full outer join uriage on yosan.店舗CD = uriage.店舗CD and yosan.日付 = uriage.日付 where isnull(yosan.店舗CD,uriage.店舗CD) = A and isnull(yosan.日付,uriage.日付) between 20170201 and 20170231
●TABLE
yosan
-日付 char(8)
-店舗CD int
-予算 int
uriage
-日付 char(8)
-店舗CD int
-売上 int
どちらのテーブルも、日付計算することがあるので、20170229等、エラーが発生する値は入れておりません。
通常のクエリのみでは、難しいと感じていますが、こういう場合どのように対応するのがよいでしょうか?
テーブル設計等のヒントも併せてご指導お願いいたします。
回答1件
あなたの回答
tips
プレビュー