【问题标题】:Is it possible to fetch database records in parts using SELECT statement?是否可以使用 SELECT 语句部分获取数据库记录?
【发布时间】:2011-02-11 06:06:30
【问题描述】:

是否可以分段获取记录?

以下将从我的数据库返回 10,000 行:

从语言中选择 *

我想创建一个 select 语句,它在按下按钮时获取前 1000 行,然后单击按钮并获取接下来的 1000 行。

我该怎么做?

【问题讨论】:

  • 什么关系型数据库?您的问题被标记为MySql PL/SQL。是哪个?

标签: sql mysql database query-optimization


【解决方案1】:

您可以使用LIMIT {offset}, {row count} 子句。 这将返回前 1000 条记录

Select * from languages LIMIT 0,1000

获取接下来的 1000 条记录

Select * from languages LIMIT 1000,1000

【讨论】:

    【解决方案2】:

    您只是在寻找 LIMIT 子句吗? 例如。 从语言限制中选择 * 1,1000

    -- later get the next 1000
    select * from languages limit 1001, 1000
    

    【讨论】:

    • 偏移量参数包含在内。 (您的代码查询将返回第 1002 - 2001 行)
    • 第一行的偏移量是0,而不是1。你的LIMIT例子永远不会返回第一个结果
    猜你喜欢
    • 2013-05-09
    • 2021-09-05
    • 2011-12-31
    • 2020-02-23
    • 1970-01-01
    • 1970-01-01
    • 2017-01-16
    • 2013-10-06
    • 1970-01-01
    相关资源
    最近更新 更多