mysql将列转换为行

Shu*_*ali 2 mysql

我有一个视图,是从多个表视图结构创建的

id     col1     col2     col3     col4

101     A     B     B     NULL

102     C     F     A     G
Run Code Online (Sandbox Code Playgroud)

等等(这是样本)

我想创建另一个看起来像的视图

ID     col_name     value

101     col1     A

101     col2     B

101     col3     B

101     col4     NULL

102     col1     C

102     col2     F

102     col3     A

102     col4     G
Run Code Online (Sandbox Code Playgroud)

等等

任何人都可以帮助plzzz

Ari*_*ion 6

也许是这样的:

SELECT id,'col1' AS colName, col1 AS value FROM table1
UNION ALL
SELECT id,'col2' AS colName, col2 AS value FROM table1
UNION ALL
SELECT id,'col3' AS colName, col3 AS value FROM table1
UNION ALL
SELECT id,'col4' AS colName, col4 AS value FROM table1
Run Code Online (Sandbox Code Playgroud)