繁体   English   中英

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

[英]using sql variable in fetch statement in db2

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

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

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

现在,我需要在 select 语句中使用 ncount 变量。 我尝试使用该变量,但返回错误。 怎样才能实现呢?

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

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

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

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

您将需要使用ROW_NUMER()过滤:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM