对于SQL中的一项任务,我有一个真正的问题,那就是以最有效的方式将2列和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和Comments列的表来手动完成此操作,并且必须从主表中整理出数据。这确实很耗时,尤其是当我有至少8个要合并的注释列时。
试试这个查询
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