DB2 - 通过从其他表中选择行数来限制表中获取的行

Posted

技术标签:

【中文标题】DB2 - 通过从其他表中选择行数来限制表中获取的行【英文标题】:DB2 - Limit fetched rows in table by selecting row count from other table 【发布时间】:2020-05-25 17:54:55 【问题描述】:

我正在尝试获取 Table_A 中的行数,将其保存在一个变量中并在 Table_B 中获取相同的行数。

CREATE VARIABLE myvar INTEGER;
SET myvar = (SELECT count (*) FROM Table_A)

SELECT * from Table_B
fetch first mywar rows ONLY

DROP VARIABLE myvar;

如何在 DB2 中实现这一点?在这种情况下使用限制会更好吗?这可以不使用变量来实现吗?

【问题讨论】:

考虑使用动态 SQL。您还应该编辑您的问题以指定 Db2-server 平台和 version/fixpack ,以及提交 SQL 的工具。 【参考方案1】:

你可以这样做,例如

SELECT * FROM
( SELECT *, ROW_NUMBER() OVER() AS RN from Table_B)
WHERE RN <= (SELECT COUNT(*) FROM Table_A)

【讨论】:

以上是关于DB2 - 通过从其他表中选择行数来限制表中获取的行的主要内容,如果未能解决你的问题,请参考以下文章

添加列通过从sql Server中的另一个表中选择所有项目来选择表

Db2 事务日志已锁定,无法归档

当用户通过电子邮件更新记录时,如何通过从指定表中选择记录的 status_id 来通知所有管理员

通过从我的数据库表中发送用户名和密码来登录 Facebook

通过从数据库中获取信息来显示已经选中的复选框

通过从另一个表中插入额外的手动数据 PHP SQL 的 SELECT 数据