我需要根据值的前几个字符查询MYSQL记录

时间:2013-04-25 15:22:25

标签: mysql select limit

我有1个MYSQL表,有8000条记录。我想通过其全名的第一个字符来查询名字,中间名和姓氏。例如,我有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

提前致谢。

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

第二次,改变偏移量:

LIMIT 6 OFFSET 6

然后

LIMIT 6 OFFSET 12