Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Meniru Fungsi UNPIVOT dalam MS Access?
Cabaran: MS Access 2010 tidak mempunyai fungsi UNPIVOT yang terdapat dalam SQL Server 2005 dan lebih baru. Panduan ini menunjukkan cara untuk mencapai hasil yang sama menggunakan keupayaan SQL terbina dalam Access.
Senario:
Bayangkan struktur jadual ini:
ID | A | B | C | Key 1 | Key 2 | Key 3 |
---|---|---|---|---|---|---|
1 | x | y | z | 3 | 199 | 452 |
2 | x | y | z | 57 | 234 | 452 |
Matlamatnya ialah untuk menukarnya kepada format yang tidak dipangsi:
ID | A | B | C | Key |
---|---|---|---|---|
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 |
Penyelesaian:
Kesan UNPIVOT boleh direplikasi menggunakan satu siri UNION ALL
pernyataan dalam pertanyaan Access SQL:
<code class="language-sql">SELECT ID, A, B, C, [Key 1] AS Key FROM tblUnpivotSource UNION ALL SELECT ID, A, B, C, [Key 2] AS Key FROM tblUnpivotSource UNION ALL SELECT ID, A, B, C, [Key 3] AS Key FROM tblUnpivotSource;</code>
Hasil:
Menjalankan pertanyaan ini terhadap jadual sampel menghasilkan set rekod tidak berpivot yang diingini:
ID | A | B | C | Key |
---|---|---|---|---|
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 |
Atas ialah kandungan terperinci Bagaimana untuk Meniru Fungsi UNPIVOT dalam MS Access?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!