加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL – 找到给定特定WHERE子句的下一行和前一行

发布时间:2020-12-12 08:56:22 所属栏目:MsSql教程 来源:网络整理
导读:我有一个名为bb_posts的 MySQL表,由bbPress论坛使用.它有一个称为topid_id的自动增量字段,另一个名为topic_poster的字段. 我试图写一个功能,找到“同一作者的下一篇文章”.因此,例如,说用户位于显示主题123的特定页面上.如果您执行SQL查询: SELECT *FROM `bb
我有一个名为bb_posts的 MySQL表,由bbPress论坛使用.它有一个称为topid_id的自动增量字段,另一个名为topic_poster的字段.

我试图写一个功能,找到“同一作者的下一篇文章”.因此,例如,说用户位于显示主题123的特定页面上.如果您执行SQL查询:

SELECT *
FROM `bb_topics`
WHERE `topic_poster` = 5
ORDER BY `topic_id` ASC

这可能返回以下行:

topic_id    topic_poster
6           5
50          5
123         5
199         5
2039        5

我想做的是编写一个返回这两行的SQL查询:

topic_id    topic_poster
50          5
199         5

这将是行的第一行前面的topic_id为123,行后面的行.

如果在一个查询中太难做到这一点,将其分解成两个查询是绝对可行的

我想避免执行整个SQL查询(“SELECT * FROM bb_topics WHERE topic_poster = 5”),并循环查看结果,因为结果集有时是巨大的.

这可能吗?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读