且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

将两列合并为一列

更新时间:2022-01-17 22:42:59

使用COALESCE(),这不会连接,但会返回列表中的第一个非空值.

use COALESCE(), this doesn't concatenate but returns the first non-null value from the list.

SELECT Column1, 
       Column2, 
       COALESCE(Column1, Column2) AS Column3 
FROM   TEST_ATTRIBUTES

  • SQLFiddle演示
    • SQLFiddle Demo
    • 如果它们都有可能为空,

      if there are chances that both of them are null,

SELECT Column1, 
       Column2, 
       IF(Column1 IS NULL AND Column2 IS NULL, NULL, CONCAT(COALESCE(Column1,''), COALESCE(Column2,''))) AS Column3 
FROM   TEST_ATTRIBUTES