我有一张table:
| 身份证|主题|subjectId|内容|
| --------------|--------------|--------------|--------------|
| 1|专题1|五|康...|
| 二|主题2|六|康...|
| 三|主题3|六|康...|
| 四|主题4|五|康...|
| 五|主题5|六|康...|
| 六|主题6|五|康...|
目前我选择了id 4,其subjectId为5,如何选择subjectId为5的上一个id,以及subjectId为5的下一个id
3条答案
按热度按时间6psbrbz91#
我不是100%确定我理解了你的问题,但从我认为你试图做的是让
id 1
返回基于传递id 4
到查询。这个查询可以做到这一点,如果你把它变成一个存储过程并传递一个id,它将返回你需要做的任何事情所需的数据:
brccelvz2#
您可以在获取当前主题的同时检索下一个和上一个ID:
它将返回:
| 身份证|主题|subjectId|内容|上一页|下一个|
| --------------|--------------|--------------|--------------|--------------|--------------|
| 四|主题4|五|康...|1|六|
mwg9r5ms3#
从MySQL 8.0开始,你可以用下一种方式使用窗口函数
lead
和lag
:https://sqlize.online/s/gi