MySQLでの列を行に変換する方法は何ですか?

MySQLでは、列を行に変換するためにUNION演算子を使用することができます。

例えば、以下の表があるとします。

+----+-------+
| id | value |
+----+-------+
|  1 |   10  |
|  2 |   20  |
|  3 |   30  |
+----+-------+

このテーブルのvalue列を行に変換するには、以下のクエリを使用できます。

SELECT 'value' AS type, value FROM table_name
UNION
SELECT 'id' AS type, CAST(id AS CHAR) AS value FROM table_name;

検索結果は次のとおりです。

+-------+-------+
| type  | value |
+-------+-------+
| value |   10  |
| value |   20  |
| value |   30  |
|   id  |    1  |
|   id  |    2  |
|   id  |    3  |
+-------+-------+

上記のクエリでは、最初のSELECT文はtypeが’value’である行のvalue列を検索し、2番目のSELECT文はtypeが’id’である行のid列を検索します。最後に、UNIONを使って2つの結果セットを1つの結果セットにマージします。

bannerAds