【发布时间】:2016-03-03 09:21:46
【问题描述】:
我需要查询一个存储过程,并根据该过程的结果集在条件语句中做出决定
例如我有一个存储过程“Main_SP”
现在如果“Main_SP”的结果是'null',那么结果应该是'Tweety',但是如果结果集不为null,那么应该检索结果集,
怎么做?
我尝试了关注和其他一些但没有奏效。
SELECT
case Main_SP('MyVariable')
when 'null'
then 'Tweety' end
FROM SYSIBM.SYSDUMMY1 WITH UR
SELECT
case Main_SP('MyVariable')
when null
then 'Tweety' end
FROM SYSIBM.SYSDUMMY1 WITH UR
它不符合条件,在第一个命令中,即使它是“null”,它也不会打印“Tweety”。
在使用第二个时,出现“Null”在上下文中无效的错误。
【问题讨论】:
-
...嗯,你有哪个,
'null'或NULL?第一个是一个字符串(包含类似的小写单词'null), and the second is the absence of any value whatsoever. You can compare strings in theWHEN'(或等于),但必须通过IS NULL/IS NOT NULL比较空值。 -
Main_SP是存储过程还是 UDF? -
@IanBjorhovde db2 中的存储过程。
标签: stored-procedures db2