Oracle:如果字段为空,则显示特殊文本
我想编写一个选择,在其中正常显示字段的值,除非该字段为空。如果它为空,我想显示一个特殊的文本,例如“字段为空”。我最好怎么做?
// Oracle newbie
I would like to write a select where I show the value of the field as normal except when the field is null. If it is null I'd like to show a special text, for example "Field is null". How would I best do this?
// Oracle newbie
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我喜欢使用函数
COALESCE
来达到这个目的。它返回给定参数中的第一个非空值(因此您可以一次测试多个字段)。所以这也行得通:
I like to use function
COALESCE
for this purpose. It returns the first non-null value from given arguments (so you can test more than one field at a time).So this would also work:
只需将 NVL PL/SQL 函数插入查询中
SELECT NVL(SOMENULLABLEFIELD,'Field Is Null') SOMENULLABLEFIELD
来自我的表;
更多详细信息请参见:http://www.techonthenet.com/oracle/functions/nvl.php
Just insert the NVL PL/SQL function into your query
SELECT NVL(SOMENULLABLEFIELD,'Field Is Null') SOMENULLABLEFIELD
FROM MYTABLE;
More detail here : http://www.techonthenet.com/oracle/functions/nvl.php
您还可以使用解码:
You could also use DECODE: