如何通过指定名称来选择下一个结果?
我有一个看起来像这样的表,没有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'之后选择所有项目。我怎样才能做到这一点?
答案 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)
没有经过测试,但你可以玩它