我想限制我在MySQL中获取的行数。你能告诉我怎么样吗?
例如:
等
答案 0 :(得分:11)
你正在寻找的术语是“分页”。不幸的是,这取决于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。
答案 1 :(得分:4)
我认为以下查询会为您提供所需的结果
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 :(得分:3)
select top x * from table in SQL Server
select * from table where ROWNUM < x in Oracle
select * from table limit x in MySQL
答案 3 :(得分:2)
MySQL和PostgreSQL支持OFFSET
,它通常与LIMIT
子句一起使用。
SELECT column FROM table
LIMIT 10000
SELECT column FROM table
LIMIT 10000 OFFSET 10000
答案 4 :(得分:1)
在mysql中你做如下
SELECT * FROM PERSON_TBL LIMIT 0, 1000
SELECT * FROM PERSON_TBL LIMIT 1000, 1000
查询1将获取前1000条记录,
查询2将获取下一个1000条记录
限制条款的语法
LIMITS OFFSET,ROWCOUNT
其中 ROWCOUNT给出要获取的行数
OFFSET给出要从哪一行获取 更多信息here
答案 5 :(得分:0)
TSQL
SELECT TOP 10000
...
PL / SQL
... WHERE ROWNUM < 10000
...
答案 6 :(得分:0)
:
SELECT * FROM `your_table` LIMIT 0, 10000
这将显示数据库中的前10000个结果。
SELECT * FROM `your_table` LIMIT 10000, 20000
这将显示记录10001,10002,...,20000