0

我有 1 个包含 8000 条记录的 MYSQL 表。我想通过全名的第一个字符查询名字、中间名和姓氏。例如,我有 40 行记录(名字、中间名和姓氏),它们的名字的第一个字符是 SSS。我的问题是,我如何查询“SSS”以仅返回 6 个结果,当我再次查询“SSS”时,我需要另外 6 个结果,依此类推,直到所有 40 条记录查询结束。

我使用了以下查询,但只返回前 6 个结果,当我下次查询“SSS”时,它一遍又一遍地返回相同的结果。拜托我需要你的帮忙。

SELECT * 
FROM Table  
WHERE  (UPPER(FName) LIKE UPPER('S%') 
       AND UPPER(MName) LIKE UPPER('S%') 
       AND UPPER(LName) LIKE UPPER('S%') 
ORDER BY ID 
LIMIT 6 OFFSET 0

提前致谢。

4

2 回答 2

0

您按 ID 订购 - 很好。记住上次返回数据集的最大 ID,下次查询时添加条件 ID > your_last_max_id

于 2013-04-25T15:27:24.500 回答
0

第二次,更改偏移量:

LIMIT 6 OFFSET 6

接着

LIMIT 6 OFFSET 12

等等

于 2013-04-25T17:50:37.767 回答