当前位置: 首页 > 知识库问答 >
问题:

在特定范围内限制sybase ASE的结果

林烨华
2023-03-14

我有一个搜索屏幕,允许用户搜索信息,并填充一个网格。一些搜索结果返回了大量数据。我正在尝试创建一个分页网格,以便一次只能从存储过程中获得10或20个结果。(我在UI中已经有了一个分页网格)

我正在尝试这样做:

select * from wl_eval limit 1, 20

上面的查询将只返回前20条记录。我如何在Sybase ASE中实现这一点?不幸的是,对于我的客户项目,我们使用的是Sybase。我知道在其他数据库引擎中,我们可以使用我上面提到的查询。我也知道我们可以使用设置行数20,但如果我想要一个特定的范围,比如从30到50,这是行不通的。

有什么想法吗?

共有2个答案

井誉
2023-03-14
SELECT TOP 20 <column list> 
FROM YourTable 
ORDER BY <list>
鲁鹤轩
2023-03-14

添加要返回的前几条记录

DECLARE @intStartRow int;
DECLARE @intEndRow int;

SET @intStartRow = (@intPage -1) * @intPageSize + 1;
SET @intEndRow = @intPage * @intPageSize;    

 WITH wl_eval AS
(SELECT field, 
 ROW_NUMBER() OVER(ORDER BY intID DESC) as intRow, 
 COUNT(intID) OVER() AS intTotalHits 
     FROM tblBlog)
 SELECT field, intTotalHits FROM wl
 WHERE intRow BETWEEN @intStartRow AND @intEndRow
 类似资料:
  • 问题内容: 我想将数字限制在一定范围内。目前,我正在执行以下操作: 这样可以将其保留在和中,但看起来不太好。我怎样才能做得更好? PS:仅供参考,我正在使用Python 2.6。 问题答案: def clamp(n, minn, maxn): return max(min(maxn, n), minn) 或功能等效: 现在,您使用: 或者说得很清楚: 更清晰:

  • 返回由边界值 a 和 b 限定范围内的 num 。 如果 num 在限定范围内,则返回 num 。 否则,返回范围内最接近的数字。 const clampNumber = (num, a, b) => Math.max(Math.min(num, Math.max(a, b)), Math.min(a, b)); clampNumber(2, 3, 5); // 3 clampNumber(1,

  • 问题内容: 我有一个交易,人员,交易日期,物品等数据库。每当一个人购买一件物品时,交易就存储在表格中,如下所示: 我想做的事情是找到从2012年1月1日(transactionDate)到2012年3月1日在14天内(可配置)或更短时间内多次购买相同ItemNumber的人(personNumber)。然后,我需要在报告中列出所有这些交易。 样本数据: 结果: 您将如何去做? 我已经尝试过这样做:

  • 问题内容: 上面的查询将返回前10个等级。 如何修改,或者是否存在另一种语法来查询第10位到第20位? 问题答案: 这真的是基本的东西。您应该使用: http://dev.mysql.com/doc/refman/5.5/en/select.html 两个参数10,10是(Offset,Limit),因此它将检索第11-20行。 9,11将需要获得第10-20名。

  • 问题内容: 我正在创建一个移动模拟器,该模拟器使用100%javascript,HTML5和CSS在Web浏览器中模拟iPhone(以及以后的其他设备)的外观和功能,并且该模拟器仅使用客户端代码即可完全起作用。 在尝试通过对原始应用程序项目本身进行少量修改而完成此任务的同时,将其托管在模拟器中,我将and 标记注入页面的顶部,然后将html加载到屏幕中。 问题是,当我加载一个新的CSS文件时,(显

  • 问题内容: 在下面的代码中,您将看到它询问“ shift”值。我的问题是我想将输入限制为1到26。 我如何轻松做到这一点? 问题答案: 使用循环不断询问他们的输入,直到收到您认为有效的信息: 如果您收到一个呼叫(例如,如果他们键入),您还希望在呼叫周围有一个障碍。 请注意,如果您使用Python 2.x,则需要使用而不是。后者将尝试将输入解释为Python代码-可能非常糟糕。