我有一个表users
,其中包含字段firstName
和lastName
. 它们都可以为NULL。
我想选择全名,其中一个,或者如果两者都没有设置,则默认为字符串。我尝试了以下查询,但如果它们都为 NULL,则值未设置为Unnamed
,而是生成一个空字符串。
SELECT COALESCE(CONCAT_WS(' ', firstName, lastName), 'Unnamed') AS fullName FROM users;
我不能使用CONCAT
,因为如果只填写其中一个名称,我希望返回单个名称,CONCAT
如果未设置其中一个值,则返回 NULL。
仅当两列都为 NULL 时,我如何设置默认值?