【发布时间】:2013-08-10 00:54:49
【问题描述】:
有没有办法检查 PL/SQL 中的值列表是否为 NULL?
我有一些类似的东西:
SELECT * FROM myTable t WHERE t.dataId IN (:myList) OR :myList IS NULL
在运行时,:myList 符号被替换为字符串列表,例如
SELECT * FROM myTable t WHERE t.dataId IN ('a', 'b', 'c') OR ('a', 'b', 'c') IS NULL
我已经意识到 ('a', 'b', 'c') IS NULL 是无效的 PL/SQL,所以我想知道是否有另一种方法来检查评估为 NULL 的值列表。
我试图模拟的行为会将('a', 'b', 'c') 评估为NOT NULL。我试图避免创建另一个变量(例如:myListFlag),如果列表为空,它将返回 ''。
【问题讨论】: