如何使用sql获取上一条和下一条数据

在网上查了下,基本都是通过id获取,但我现在有个需求,表结构类似这样:
name | age | sex
simon 23 1
nancy 20 2

请问各位,这种没有id号,以name作主键的表如何通过sql获取某条数据(比如name=simon)的下一条数据?

阅读 7.4k
1 个回答

数据库表中的记录是按照集合的方式存储的,数据库不能保证记录的存储顺序就是你插入记录的顺序。

所以按你的说法要拿一条记录的上一条或者下一条,必须使用order子句对取出的结果排序,然后使用limit子句取得对应位置的记录。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题