首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从给定的结果集中选择12行用于DataGrid/Paging?需要覆盖网格默认缓存

问如何从给定的结果集中选择12行用于DataGrid/Paging?需要覆盖网格默认缓存
EN

Stack Overflow用户
提问于 2010-10-27 05:25:53
回答 2查看 89关注 0票数 1

我有一个SQL查询,它将返回超过10,000行。由于客户端一次只能查看12行,我如何修改我的SQL,以便只选择所需的行?

我的期望是,每当用户单击网格时,我都会重新查询数据库。我的解决方案是基于下面的演示,但是我正在尝试使用northwind的"OrderDetail“表,它没有干净的/顺序的ID值。

http://demos.telerik.com/aspnet-ajax/grid/examples/client/virtualscrollpaging/defaultcs.aspx

我在本地开发环境中使用SQL Express,但在生产环境中将使用SQL2008。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-10-27 05:34:48

您可以使用ROW_NUMBER()函数:

代码语言:javascript
复制
WITH paging AS 
(
    SELECT
        ROW_NUMBER() OVER (ORDER BY COLUMN) AS rowNum,
        ...
    FROM table
) 
SELECT *
FROM paging
WHERE rowNum BETWEEN 1 AND 12

这将创建一个CTE,但也可以使用temp表或表变量。然后,您可以添加一些参数来指定BETWEEN子句的整数。

票数 2
EN

Stack Overflow用户

发布于 2010-10-27 05:30:53

代码语言:javascript
复制
WITH [EMPLOYEE ORDERED BY ROWID] AS
(SELECT ROW_NUMBER() OVER (ORDER BY EMPID ASC) AS ROWID, * FROM EMPLOYEE)
SELECT FROM [EMPLOYEE ORDERED BY ROWID] WHERE ROWID <= 12
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4028162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档