【问题标题】:How can I tell a database to only return data in discrete portions?如何告诉数据库只返回离散部分的数据?
【发布时间】:2010-10-14 13:52:44
【问题描述】:

我找不到关于这个话题的合适讨论帖,所以我会继续在这里提问。

问题:我有一个返回大小为 100,000+ 的结果的选择查询。用户想要查看所有这些数据,但显然我不能一次将其全部提供给他。我也不想在客户端的内存中存储这么多数据。我希望用户能够“翻阅”结果,能够查看每页 500 条记录中的数据。

那么,我怎样才能要求数据库一次只发回 500 条记录呢?

【问题讨论】:

  • 哪个数据库平台?
  • 什么类型的数据库,你说的是sql server
  • 现在我正在使用 Sybase,但我们可能正在切换到 Oracle。

标签: database select paging


【解决方案1】:

您可以使用rownumbertop 的组合(至少在 SQL 服务器中)

【讨论】:

    【解决方案2】:

    这取决于您使用的数据库,但在 MySql 中您可以尝试以下操作:

    SELECT * FROM MyTable LIMIT <start>, 500
    

    并将&lt;start&gt; 替换为您想要开始的索引(例如,第一页为 0,第二页为 501)。

    【讨论】:

      猜你喜欢
      • 2022-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-12
      • 1970-01-01
      相关资源
      最近更新 更多