在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语句将value列查询为type为’value’的行,第二个SELECT语句将id列查询为type为’id’的行。最后,使用UNION将两个结果集合并为一个结果集。