在Oracle 11g中与元组中的null进行比较

皮达尔·杜宁

如何在以下查询中检查空值?维护不是问题。该查询将自动运行以检查是否已对数据库进行更改。

SELECT COUNT(*) FROM MSG_TYP_LKUP
  WHERE ((MSG_TYP,NM,SUB_TYP,DIRECT,FORMAT) IN
            (
                    ('setr.005','Cancel to Fund',NULL,'OUT','SWIFT-XML'),
                    ('setr.011','Cancel to Fund',NULL,'OUT','SWIFT-XML'),
                    ('setr.013','Order to Fund',NULL,'OUT','SWIFT-XML'),
                    ('setr.014','Cancel to Fund',NULL,'OUT','SWIFT-XML'),
                    ('setr.016','Order Received','RECE','OUT','SWIFT-XML'),
                    ('setr.016','Order Acknowledgement','STNP','OUT','SWIFT-XML')
            )
     );
戈登·利诺夫(Gordon Linoff)

最简单的方法可能是为插入一个新值NULL像这样的东西:

SELECT COUNT(*)
FROM MSG_TYP_LKUP
WHERE ((MSG_TYP, NM, COALESCE(SUB_TYP, '<NULL>'), DIRECT, FORMAT) IN
            (
                    ('setr.005','Cancel to Fund', '<NULL>','OUT','SWIFT-XML'),
                    ('setr.011','Cancel to Fund', '<NULL>','OUT','SWIFT-XML'),
                    ('setr.013','Order to Fund', '<NULL>','OUT','SWIFT-XML'),
                    ('setr.014','Cancel to Fund', '<NULL>','OUT','SWIFT-XML'),
                    ('setr.016','Order Received','RECE','OUT','SWIFT-XML'),
                    ('setr.016','Order Acknowledgement','STNP','OUT','SWIFT-XML')
            )
     );

我对这种方法并不感到兴奋。但是Oracle没有NULL-safe比较运算符,因此这可能是最简单的方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Oracle 11g中删除“ not null”约束错误

来自分类Dev

oracle 11g中的USING子句

来自分类Dev

在VirtualBox中安装Oracle 11g

来自分类Dev

Oracle 11g中的NVL功能

来自分类Dev

Oracle 11g SQL中的错误

来自分类Dev

Oracle 11g中的TIMESTAMPDIFF?

来自分类Dev

oracle 11g 中的编号行

来自分类Dev

比较Oracle 11g中2个不同行的2个不同列

来自分类Dev

使用Oracle 11g比较示例表中具有不同行和列的列

来自分类Dev

Oracle Database 11g中的错误ORA-12638

来自分类Dev

如何在Oracle 11g中执行存储过程

来自分类Dev

在Oracle 11g中创建表时出错

来自分类Dev

Oracle 11g中rowid的长度是否固定?

来自分类Dev

Oracle 11g中游标中的Listagg

来自分类Dev

Oracle数据库中的存储过程(11g)

来自分类Dev

如何在Oracle 11g中限制查询结果?

来自分类Dev

查询中的Oracle 11g临时列表对象

来自分类Dev

在oracle 11g中创建用户的软件包

来自分类Dev

如何在Oracle 11g中执行CTE查询

来自分类Dev

如何在Oracle 11G中设置sysdba密码

来自分类Dev

Oracle 11g 中的自连接表

来自分类Dev

如何在 oracle 11g 中更改几何?

来自分类Dev

oracle 11g 中的转置行

来自分类Dev

如何从oracle 11g中的日期比较月和日的值并在where子句中使用它?

来自分类Dev

如何在Oracle 11g中的“选择”查询中添加偏移量?

来自分类Dev

如何在Oracle 11g SQL中的插入查询中插入新行

来自分类Dev

如何在Oracle PL / SQL 11G中声明数字数组

来自分类Dev

从Oracle 11g中的DECODE到CLOB到CHAR的问题

来自分类Dev

在oracle 11g中查找全局数据库名称