Oracle:如果field为null,则显示特殊文本

Svi*_*ish 5 oracle null select

我想写一个选择,我将该字段的值显示为正常,除非该字段为空.如果它为null我想显示一个特殊的文本,例如"Field is null".我最好怎么做?

// Oracle newbie
Run Code Online (Sandbox Code Playgroud)

Tom*_*mmi 11

我喜欢COALESCE为此目的使用功能.它返回给定参数的第一个非空值(因此您可以一次测试多个字段).

SELECT COALESCE(NULL, 'Special text') FROM DUAL
Run Code Online (Sandbox Code Playgroud)

所以这也有效:

SELECT COALESCE(
   First_Nullable_Field, 
   Second_Nullable_Field, 
   Third_Nullable_Field, 
   'All fields are NULL'
) FROM YourTable
Run Code Online (Sandbox Code Playgroud)

  • +1因为`COALESCE()`也适用于mysql和其他SQL Server,而不仅仅是ORACLE. (2认同)