如何在SELECT语句中用空字符串替换NULL值?输出"NULL"值看起来不太专业。
这非常不寻常,根据我的语法,我希望它能工作。我希望有人解释一下为什么它不起作用。
select CASE prereq WHEN (prereq IS NULL) THEN " " ELSE prereq end from test;
原始表格的示例,我想要的内容以及实际打印出来的内容:
original wanted what actually prints
-------- ------ ---------------------
value1 value1
NULL NULL
value2 value2
NULL NULL
正如你所看到的,它执行的是我不想要的相反操作,因此我尝试将 IS NULL 反转为 IS NOT NULL,当然这没有解决问题。我还尝试交换 when case 的位置,但也没有奏效。
看起来下面给出的3个解决方案都可以完成任务。
select if(prereq IS NULL ," ",prereq ) from test
select IFNULL(prereq,"") from test
select coalesce(prereq, '') from test
(prereq IS NULL)
应该简写为NULL
。 - ScottJShea