Mysql SQL:将所有值分组到一列的COALESCE()函数的替代方法
我有一张这样的桌子 使用COALESCE()函数Mysql SQL:将所有值分组到一列的COALESCE()函数的替代方法,mysql,sql,google-cloud-sql,Mysql,Sql,Google Cloud Sql,我有一张这样的桌子 使用COALESCE()函数 SELECT COALESCE(column1, column2, column3) combinedColumn from t; 我明白了 然而,我想要这个 我找到了一个使用UNION的方法,但这不是很优雅。除了包含所有值之外,是否有一个函数与COALESCE()类似?谢谢您不能在此处使用合并,因为可能有多个值要返回 联合是最好的解决方案(不是因为空白而联合) 这就是说,如果要维护重复项(如果有的话),可以使用UNION ALL,或者将
SELECT COALESCE(column1, column2, column3) combinedColumn from t;
我明白了
然而,我想要这个
我找到了一个使用UNION的方法,但这不是很优雅。除了包含所有值之外,是否有一个函数与COALESCE()类似?谢谢您不能在此处使用合并,因为可能有多个值要返回 联合是最好的解决方案(不是因为空白而联合)
这就是说,如果要维护重复项(如果有的话),可以使用UNION ALL,或者将所有列合并为一个字符串,然后再次将其拆分(避免不惜任何代价进行UNION ALL)在这里不能使用联合,因为可能要返回多个值 联合是最好的解决方案(不是因为空白而联合)
也就是说,如果要维护重复项(如果有的话),可以使用UNION ALL,或者将所有列合并为一个字符串,然后再次拆分它们(不惜任何代价避免UNION ALL)如何确定顺序?在这种情况下,顺序并不重要。我只想把所有的值合并成一列,在下一个链接中有一个很好的例子:;试着适应你的案例。你如何确定顺序?在这种情况下,顺序并不重要。我只想把所有的值合并成一列,在下一个链接中有一个很好的例子:;试着适应你的案子。
select column1 from mytable
UNION
select column2 from mytable
UNION
select column3 from mytable