博主辛苦了,我要打赏银两给博主,犒劳犒劳站长。
【摘要】回头想想自己写自己博客系统的时候,是完全使用 PHP 来获取文章的下一篇和上一篇的 ID 的,感觉自己当初使用的方法太过于低级了,前几天访问某位站长的博客看了看其中的一篇文章就是使用 SQL 语句来获取上一篇和下一篇文章的 ID,我觉得方法特别有用就把他所使用的方法借鉴过来了。
如下表中所示:
假设当前文章的 id 是 3,我们要获取上一篇和下一篇文章的 id,通常我们采用的 sql 语句如下:
select id from test where id = id - 1; // 上一篇文章 id
select id from test where id = id + 1; // 下一篇文章 id
如图:
这样却出现了错误,原因是并不存在 id = 4 的记录,所以取出来的是 empty,但下一篇文章的 id 就是 6 了,解决这一问题则需要使用另一种 SQL 语句:
select id from test where id < 3 order by id desc limit 1;
select id from test where id > 3 order by id asc limit 1;
这样取出来的 id 就正是我们想要的。
版权归 马富天PHP博客 所有
本文标题:《MySQL 使用 SQL 语句实现查询上一篇和下一篇文章的 ID》
本文链接地址:http://www.mafutian.net/7.html
转载请务必注明出处,小生将不胜感激,谢谢! 喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^
顶3
踩3
第 1 楼 子任 2017-09-18 11:50:47 四川成都
评论审核未开启 |