【发布时间】:2016-01-06 08:07:27
【问题描述】:
我有一个查询管理应用程序。以前我使用的是 SQL Server 数据库,并通过我以前做的查询来获取受影响的行数:
SELECT * FROM TABLE(或任何其他选择查询)
然后我执行SELECT @@ROWCOUNT 以获取受上次执行查询影响的行数。
我已阅读有关 SQL%ROWCOUNT 的信息,但我无法使其在 SELECT 语句中工作
有没有办法在 Oracle 数据库中做到这一点?谢谢!
已编辑:
我已经通过执行SELECT COUNT(*) FROM (QUERY) 来获取受查询影响的行数来解决这个问题,我放弃了这种方法,因为如果查询包含ORDER BY 子句,它在 SQL Server 中不起作用。
【问题讨论】:
-
Number of rows affected by an UPDATE in PL/SQL 的可能重复项也应该与
Insert一起使用 -
据我所知,没有确切的纯 SQL 等价物。您可以从 PL/SQL 执行此操作,但我不确定这是否是您想要的。如果您提供更多关于您将如何执行查询以及您需要计数的原因的上下文,那么您可以使用其他替代方法。
-
谢谢@sstan,这就是我想知道的,我通过
SELECT COUNT(*) FROM (QUERY)的解决方法做到了。我放弃了这种方法,因为如果查询包含 ORDER BY 子句,它在 SQL Server 上不起作用,但它似乎在 Oracle 上运行良好