【发布时间】:2023-03-03 11:07:01
【问题描述】:
如果第一列中没有记录(为空),我想从另一列中选择值。 我想要这样的东西:
SELECT (if Column1 IS NULL THEN Column2), Column3, Column4 FROM MyTable
如何在 SQLite 中做到这一点?
【问题讨论】:
如果第一列中没有记录(为空),我想从另一列中选择值。 我想要这样的东西:
SELECT (if Column1 IS NULL THEN Column2), Column3, Column4 FROM MyTable
如何在 SQLite 中做到这一点?
【问题讨论】:
使用COALESCE function,它返回第一个非空参数:
SELECT COALESCE(Column1, Column2), Column3, Column4
FROM MyTable
在这种情况下,您会得到Column1,但如果它为NULL,则会返回Column2。
【讨论】:
coalesce() — Return first non-NULL argument
coalesce( param1, param2, ... )
coalesce() 函数接受两个或多个参数并返回第一个非 NULL 参数。如果所有参数值为 NULL,则返回 NULL。
ifnull(), nullif()
【讨论】:
你可以使用IFNULL函数,试试这个
SELECT IFNULL(Column1, Column2), Column3, Column4 FROM MyTable
【讨论】:
使用COALESCE(column1,column2)。
SELECT COALESCE(Column1, Column2), Column3, Column4 FROM MyTable
【讨论】: