【问题标题】:Limit SQL query result in MySQL在 MySQL 中限制 SQL 查询结果
【发布时间】:2011-03-24 21:23:12
【问题描述】:

我想限制我在 MySQL 中获取的行数。你能告诉我怎么做吗?

例如:

  • 第一个查询我只想检索前 10,000 条记录
  • 第二个查询我想只检索 10,000 - 20,000 的记录

【问题讨论】:

标签: sql mysql pagination


【解决方案1】:

我认为下面的查询会给你想要的结果

SELECT * FROM PERSON_TBL LIMIT 0, 10000

@ 1st query 我只想检索前 10,000 条记录

SELECT * FROM PERSON_TBL LIMIT 10000,10000

@ 2nd query 我想只检索 10,000 - 20,000 的记录

【讨论】:

    【解决方案2】:

    在 MySQL 中:

    SELECT * FROM `your_table` LIMIT 0, 10000 
    

    这将显示数据库中的前 10000 个结果。

     SELECT * FROM `your_table` LIMIT 10000, 20000 
    

    这将显示记录 10001、10002、...、20000

    【讨论】:

      【解决方案3】:

      您要查找的术语是“分页”。不幸的是,这取决于 SQL 引擎。

      对于 MS SQL Server,请参阅此Stack Overflow question

      既然你提到了MySQL,其实很简单:

      SELECT [columns] FROM [a table] LIMIT 10000
      SELECT [columns] FROM [a table] LIMIT 10000 OFFSET 10000
      

      第一个语句获取结果 1-10,000,第二个语句获取结果 10,001-20,000。

      【讨论】:

        【解决方案4】:

        在mysql中你可以这样做

        SELECT * FROM PERSON_TBL LIMIT 0, 1000 
        
        SELECT * FROM PERSON_TBL LIMIT 1000, 1000 
        

        查询 1 将获取前 1000 条记录,

        查询 2 将获取接下来的 1000 条记录

        limits 子句的语法

        限制偏移,行数

        在哪里 ROWCOUNT 给出要获取的行数

        OFFSET 给出从哪一行获取 更多信息here

        【讨论】:

          【解决方案5】:

          MySQL 和 PostgreSQL 支持 OFFSET,通常与 LIMIT 子句一起使用。

          SELECT column FROM table
          LIMIT 10000
          
          SELECT column FROM table
          LIMIT 10000 OFFSET 10000
          

          【讨论】:

            【解决方案6】:

            TSQL

            SELECT TOP 10000 ...

            PL/SQL

            ...WHERE ROWNUM < 10000...

            【讨论】:

              【解决方案7】:
              select top x * from table in SQL Server
              
              select * from table where ROWNUM < x in Oracle
              
              select * from table limit x in MySQL
              

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2011-03-08
                • 1970-01-01
                • 1970-01-01
                • 2010-10-01
                • 1970-01-01
                • 2011-09-28
                相关资源
                最近更新 更多