我对SQL中的一个任务有一个真正的问题,即以最有效的方式将来自2列和更多列的数据合并为1列。
id column1 column2 column3
1 ok notOK
2
3 abraka dabrra
4 miew haf
我需要将3条评论合并到1条评论栏中,如此
id comments
1 ok
1 notOK
2
3 abraka
3 dabrra
4 miew
4 haf
现在我手动插入到表中我有id和注释列,我必须从主表中排序数据。这非常耗时,特别是当我有至少8个我想要合并的评论列时。
答案 0 :(得分:4)
尝试此查询
Select Id, Comments
From
(
Select Id, Column1 Comments From MyTable Where Column1 Is Not Null
Union All
Select Id, Column2 Comments From MyTable Where Column2 Is Not Null
Union All
Select Id, Column3 Comments From MyTable Where Column3 Is Not Null
) DerivedTable
Order by Id