从两列中选择SELECT not null列

foo*_*how 11 mysql sql null

我有一个有两列的表,其中一列是一列,一列NULL不会,我想做的是:

SELECT (column1 OR column2) AS value
Run Code Online (Sandbox Code Playgroud)

但我需要检索非null值.我觉得这可能是一个简单的问题,但任何帮助表示赞赏.

zer*_*kms 32

SELECT COALESCE(column1, column2) AS value
Run Code Online (Sandbox Code Playgroud)

要么

SELECT IFNULL(column1, column2) AS value
Run Code Online (Sandbox Code Playgroud)

要么

SELECT CASE WHEN column1 IS NOT NULL THEN column1 ELSE column2 END AS value
Run Code Online (Sandbox Code Playgroud)

要么

SELECT IF(column1 IS NOT NULL, column1, column2) AS value
Run Code Online (Sandbox Code Playgroud)

  • 我好像有很多东西要学习sql,谢谢. (2认同)
  • @Foo_Chow:不仅关于sql,而且关于特定的mysql方言。#2和#4是mysql特定的解决方案。#1和#3在大多数DBMS中都可以使用。 (2认同)