SQLITE:如果第一列为null,则选择另一列

时间:2013-05-30 07:37:05

标签: sqlite select null

如果第一列中没有记录(为空),我想从另一列中选择值。 我想要这样的东西:

SELECT (if Column1 IS NULL THEN Column2), Column3, Column4 FROM MyTable

我怎样才能在SQLite中做到这一点?

4 个答案:

答案 0 :(得分:7)

使用COALESCE function,它返回第一个非空参数:

SELECT COALESCE(Column1, Column2), Column3, Column4
FROM MyTable

在这种情况下,您将获得Column1但如果它为NULL,则会返回Column2

答案 1 :(得分:2)

您可以使用IFNULL功能,试试这个

SELECT IFNULL(Column1, Column2), Column3, Column4 FROM MyTable

答案 2 :(得分:2)

来自Safari Books

名称

coalesce() — Return first non-NULL argument

常用用法

coalesce( param1, param2, ... )

描述

coalesce()函数接受两个或多个参数并返回第一个非NULL参数。如果所有参数值都为NULL,则返回NULL。

另见

ifnull(), nullif()

答案 3 :(得分:1)

使用COALESCE(column1,column2)

SELECT COALESCE(Column1, Column2), Column3, Column4 FROM MyTable