sql - 用 SQL 中的默认值替换空白值
问题描述
我有以下查询,它返回列 property_value 的空白值:
select target_name,target_type,property_name,property_value
from oracle_properties
where target_name like 'DY01EPI%' and property_name like 'DataGuardStatus'
sql开发人员的输出:
如果 Property_value 中的行为空白,我如何获得像“primary”这样的默认值。我试过使用NVL(property_value,'Primary')
,COALESCE(property_value,'Primary')
但没有给出预期的结果。请建议。谢谢。
解决方案
估计值不是NULL
。您可以为此使用正则表达式:
select target_name, target_type, property_name,
(case when regexp_like(property_value, '[a-zA-Z0-9]') then property_value
else 'primary'
end) as property_value
from oracle_properties
where target_name like 'DY01EPI%' and
property_name like 'DataGuardStatus'
推荐阅读
- python-3.x - 即使输入相同,相同的代码也会给出不同的输出
- android - 如何在 java 中对 JSON API 进行排序或过滤
- node.js - 无法再次使用 Jest、Supertest、Passport、Koa2 在测试中发送经过身份验证的请求
- netbeans - netbeans 在同一选项卡中打开文件
- c# - Newtonsoft Json.NET 不序列化 [过时] 属性
- rust - 是否有从标准输入或生锈文件中读取的特征?
- docker - 在 travis ci 中,docker 登录失败
- ios - 更改自定义 UIButton 状态时的 UI 问题
- java - 如何在 HierarchicalStreamReader 转换器中使用 xml 标签获取 xml 元素的值
- mod-auth-openidc - 提交表单时刷新 mod_auth_openidc 上的访问令牌