相关疑难解决方法(0)

使用row_number从查询中获取@@ rowcount的有效方法

我使用SQL Server 2005中的row_number over()功能进行了一次昂贵的查询.在查询被分页时,我只返回这些记录的子列表.但是,我还想返回记录总数,而不仅仅是分页子集.有效地运行查询两次以获得计数是不可能的.

选择计数(*)也是不可能的,因为当我尝试这个时表现非常糟糕.

我真正喜欢的是@@ ROW_NUMBERROWCOUNT :-)

sql sql-server sql-server-2005

30
推荐指数
2
解决办法
8139
查看次数

具有分页和计数的SQL Server查询

我想用分页进行数据库查询.所以,我使用了一个通用表表达式和一个排名函数来实现这一点.看下面的例子.

declare @table table (name varchar(30));
insert into @table values ('Jeanna Hackman');
insert into @table values ('Han Fackler');
insert into @table values ('Tiera Wetherbee');
insert into @table values ('Hilario Mccray');
insert into @table values ('Mariela Edinger');
insert into @table values ('Darla Tremble');
insert into @table values ('Mammie Cicero');
insert into @table values ('Raisa Harbour');
insert into @table values ('Nicholas Blass');
insert into @table values ('Heather Hayashi');

declare @pagenumber int = 2;
declare @pagesize int = 3;
declare @total int;

with …
Run Code Online (Sandbox Code Playgroud)

sql-server pagination common-table-expression

26
推荐指数
1
解决办法
7万
查看次数