我有一张这样的桌子
使用COALESCE()函数...
SELECT COALESCE(column1, column2, column3) combinedColumn from t;
我明白了...
但是,我想要这个。...
我找到了使用UNION ALL的解决方法,但这不是很好。是否有一个功能像COALESCE()一样,但包含所有值?谢谢
答案 0 :(得分:2)
您不能在此处使用合并,因为可能有多个值要返回
UNION是最好的解决方案(因为空白,所以不是UNION ALL)
select column1 from mytable
UNION
select column2 from mytable
UNION
select column3 from mytable
也就是说,如果您要维护重复项(如果有),那就是UNION ALL,或者将所有列连接到一个字符串中,然后再将它们拆分出来(不惜一切代价避免UNION ALL)