ホームページ >データベース >mysql チュートリアル >Microsoft Access 2010 で UNPIVOT 機能を実現するにはどうすればよいですか?
Microsoft Access 2010 で UNPIVOT 機能を実現する
Microsoft SQL Server の UNPIVOT 関数は、データをワイド形式からロング形式に効率的に再形成します。 Access 2010 は直接 UNPIVOT に相当する機能を提供していませんが、SQL を使用してその動作を効果的に複製できます。
異なるキー (キー 1、キー 2、キー 3) にリンクされた複数の属性列 (A、B、C など) を持つテーブルを想像してください。目的は、各属性とキーのペアが独自の行を占めるように、このデータを再構築することです。
UNION ALL
クエリは解決策を提供します:
<code class="language-sql">SELECT ID, A, B, C, [Key 1] AS key_field FROM tblUnpivotSource UNION ALL SELECT ID, A, B, C, [Key 2] AS key_field FROM tblUnpivotSource UNION ALL SELECT ID, A, B, C, [Key 3] AS key_field FROM tblUnpivotSource;</code>
このクエリは、各キー列のデータを統合テーブルにマージします。結果として得られる各行は、属性とキーのペアを表します:
ID | A | B | C | key_field |
---|---|---|---|---|
1 | x | y | z | 3 |
2 | x | y | z | 57 |
1 | x | y | z | 199 |
2 | x | y | z | 234 |
1 | x | y | z | 452 |
2 | x | y | z | 452 |
キー値が重複する状況 (例の「452」など) では、同一のキーを持つ複数の行が生成されることに注意することが重要です。
以上がMicrosoft Access 2010 で UNPIVOT 機能を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。