我想计算查询返回的语句中的行数。我发现的唯一解决方案是:
我是否缺少一些基本的功能和/或知识,或者没有更简单的方法?
感谢任何帮助或指导。
编辑:返回的语句只是原始表的一小部分,因此为此目的执行另一个查询是不切实际的。
答案 0 :(得分:1)
在sql server表行中,信息存储在目录视图中,动态管理视图可以用它来查找计数
此方法仅适用于物理表。因此,您可以将记录存储在一个临时表中,稍后将其删除
SELECT Sum(p.rows)
FROM sys.partitions AS p
INNER JOIN sys.tables AS t
ON p.[object_id] = t.[object_id]
INNER JOIN sys.schemas AS s
ON t.[schema_id] = s.[schema_id]
WHERE p.index_id IN ( 0, 1 ) -- heap or clustered index
AND t.NAME = N'tablename'
AND s.NAME = N'dbo';
有关详细信息,请查看此article
如果您不想执行其他查询,请在查询后使用select @@rowcount
。它将获取先前count
查询返回的select
行
select * from query_you_want_to_find_count
select @@rowcount