次のようなデータセットがあります。
前
FirstName LastName Field1 Field2 Field3 ... Field27
--------- -------- ------ ------ ------ -------
Mark Smith A B C D
John Baptist X T Y G
Tom Dumm R B B U
ただし、データは次のようになります。
後
FirstName LastName Field Value
--------- -------- ----- -----
Mark Smith 1 A
Mark Smith 2 B
Mark Smith 3 C
Mark Smith 4 D
John Baptist 1 X
John Baptist 2 T
John Baptist 3 Y
John Baptist 4 G
Tom Dumm 1 R
Tom Dumm 2 B
Tom Dumm 3 B
Tom Dumm 4 U
PIVOT機能を見てきました。それはうまくいくかもしれません。よくわかりません。使い方がわからなかった。しかし、ピボットが「フィールド」列に「4」を配置できるかどうかはわかりません。私の理解では、PIVOT関数は、Field1...Field27の値を「Value」列に単純に転置します。
また、カーソルを使用してテーブルを反復処理し、フィールドの列をループしてから、別のテーブルに「フィールド」と「値」を挿入することも検討しました。ただし、これはシリアルベースの操作であるため、パフォーマンスに影響を与えることはわかっています。
どんな助けでも大歓迎です!お分かりのように、私はT-SQL(または一般的なSQL)とSQLServerにまったく慣れていません。