仅在 DB2 中参数化 FETCH FIRST n ROWS

发布于 2024-09-24 07:37:52 字数 363 浏览 5 评论 0原文

我正在尝试执行以下操作:

  select * 
  from table      
  fetch first @param rows only

@param 是一个 int。

DB2 不会有它。我听说过将其与 || 连接起来,但我似乎无法让它发挥作用。

有人有这方面的经验吗?

(PS我看到了类似的问题)但没有不明白他使用“:1”的方法。

I'm trying to do the following:

  select * 
  from table      
  fetch first @param rows only

@param is an int.

DB2 would not have it. I've heard of concatenating it with ||, but I can't seem to get that to work.

Anyone have experience with this?

(PS I saw a similar question) but didn't understand his approach using ':1'.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

时光病人 2024-10-01 07:37:53

您可以尝试以下操作:

select t.*
from (select r.*, row_number() over() as row_num  
      from table r) as t
where row_num <= @param

You could try the following:

select t.*
from (select r.*, row_number() over() as row_num  
      from table r) as t
where row_num <= @param
空心空情空意 2024-10-01 07:37:53

试试这个,其中 V_NBR 是您传入的所需行数的参数:

FETCH FIRST ' || DIGITS ( V_NBR ) || '  ROWS ONLY '  

Try this, where V_NBR is your passed in parameter for the number of rows you want:

FETCH FIRST ' || DIGITS ( V_NBR ) || '  ROWS ONLY '  
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文