【发布时间】:2016-04-26 05:45:12
【问题描述】:
我有一个处理 Oracle 数据库中许多数据的场景。在某些情况下,变量Sec_email 将包含许多值,而在某些情况下Sec_email 将包含null 或' '。
那么谁能告诉我如何为此编写查询?
我试过了
(C.SECONDARY_EMAIL IN ('?,?') OR '' = '' )
其中 C 是客户端表。
当我使用它时,我得到的计数为 0。
【问题讨论】:
-
OR '' = ''适用于所有记录。 -
@Raja Anbazhagan:实际上,在 Oracle 中
''与null相同,所以'' = ''始终为假。 -
在那种情况下
OR '' = ''是必要的吗? -
您提到在某些情况下 sec_email 将包含 许多值。 许多值是什么意思?是数组还是逗号分隔的字符串?
-
未知。
'' = ''在 Oracle 上与NULL = NULL相同,其真值 UNKOWN。 (如果你接受否定,这很重要,但在这种情况下并不重要。)
标签: sql oracle conditional-statements