在查询以下情况时需要您的帮助。

表格1

Name -ID1  - ID2 - ID3
A1  - NULL - 11 - 12
A2  -  14  - NULL -11


上表需要翻译如下

表2

Name - ID
A1  - 11
A1  - 12
A2 - 14
A2 - 11


table2将是基于表1的输出。将不考虑所有空值。做这个的最好方式是什么。

任何人都可以通过查询如何帮助我。非常感谢

最佳答案

使用UNION ALL

SELECT t.*
FROM
(
    SELECT name, id1 AS id FROM table1
    UNION ALL
    SELECT name, id2 FROM table1
    UNION ALL
    SELECT name, id3 FROM table1
) t
WHERE id IS NOT NULL
ORDER BY name;

关于mysql - sql查询—透视或任何其他方式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51266904/

10-12 16:25
查看更多