私はSQLにかなり慣れていないので、これを理解しようとしています:
その年の各月に 12 の列があり、その月の予算残高を表示する BUDGET というテーブルがあります。したがって、テーブルは次のようになります。
[Department] [Year] [Month1] [Month2] .... [Month12]
ABCD 2010 $5000 $5500 ..... $4000
ABCD 2011 $6000 $6500 ..... $3000
私がやろうとしているのは、このテーブルを正規化し、各行を次の形式の日付フィールドを持つ 12 行に分割することです。また、その月の値を表示する [Balance] 列も必要です。したがって、正規化されたテーブルは次のようになります。
[Department] [Date] [Balance]
ABCD 20100101 $5000
ABCD 20100201 $5500
ABCD 20100301 .....
ABCD ....... ......
同じテーブルで CROSS JOIN を使用しようとしましたが、失敗しました。while ループも使用しようとしましたが、それも失敗しました。どんな種類の助けも大歓迎です。ありがとう!
編集: SQL Server 2008 を使用しています