在db2中的fetch语句中使用sql变量


DECLARE N_COUNT integer;
set N_COUNT = (select statement returning a single value)

声明一个具有integer数据类型的变量并设置一个具有值的变量。

select * from table1 fetch first (variable) rows only.

现在,我需要在select语句中使用ncount变量。我尝试使用该变量,但返回时出现错误。如何才能实现它?

FETCH FIRST ROWS ONLY是一个优化功能,它不接受变量。

您需要使用ROW_NUMER()过滤:

SELECT * FROM (
select table1.*,
row_number() over() as rownum
from table1 
) AS t
where rownum <= :n_count

您可以按如下方式执行此操作。

DECLARE @N_COUNT int;
SELECT @N_COUNT = ColumnName FROM TableName Where Condtion

注意:您的查询应该只返回数据类型integer的单个值。

相关内容

  • 没有找到相关文章

最新更新