DB2:不允许参数化:'仅获取第一行<x>行'</x>

时间:2010-04-12 10:51:55

标签: sql db2

虽然在 Oracle 数据库中,但允许通过添加到查询来参数化查询可以获取的行数:

select ...
from ...
where ...
and rownum <= @MaximumRecords

我无法为在 DB2 中运行的acuivalent查询添加类似的条件: 允许添加:

select ... 
from ...
where ...
fetch first 500 rows only

(其中有固定的行数) 但不是:

select ... 
from ...   
where ...      
fetch first :1 rows only

(:1 == @MaximumRecords)

有人知道这个问题的解决方案/解决方法吗?

1 个答案:

答案 0 :(得分:0)

我想我找到了解决方案。我刚刚使用一个为@MaximnumRecords提供0默认值的工具运行此查询 并且看起来DB2不允许执行:
“仅获取前0行” - 无论如何 - 这就是问题所在。