在MySQL中选择下一个结果

时间:2013-06-01 20:01:57

标签: php mysql

如何通过指定名称来选择下一个结果?

我有一个看起来像这样的表,没有ID,只有用户名列表。

row1 = username(Alex) 
row2 = username(Bob) 
row3 = username(Britney) 
row4 = username(Steve) 
row5 = username(Courtney) 
row6 = username(Greg) 
row7 = username(Abul) 
row8 = username(Roger) 
row9 = username(Victoria) 
row10 = username(Brooke) 

让我们说,我想在'Greg'之后选择所有项目。我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:0)

不,SQL中没有表的固有排序,因此无法确定下一个名称(按字母顺序除外)。

实际上,问题中显示的顺序完全是任意的 - 没有指定的order by子句,行的检索顺序基本上是随机的。

答案 1 :(得分:0)

这可以通过两个查询来完成。首先找到特定名称的id。 喜欢从tablename中选择id,其中username ='Greg' 然后获取该ID, select * from tablename,其中id>获取id。

答案 2 :(得分:0)

将ID列添加到表中,然后使用LIMIT作为偏移量

SELECT * FROM users LIMIT (SELECT ID FROM username WHERE username='Greg'), MAX(ID)

没有经过测试,但你可以玩它