您的位置:首页 > 数据库

从数据库中提取新闻的上一条,下一条的sql语句

2011-02-26 14:55 337 查看
在做cms系统时我们经常会用到上一条,下一条或者是上一篇,下一篇,这是我们都会简单的使用

这里暂定数据表为news  字段名为id   当前urlid参数值为currentId

如果按照一般的想法,下面是提取上一篇的信息的sql语句

select * from news where id=currentId-1;


下面是提取下一篇信息的sql语句

select * from news where id=currentId+1;


这样的虽然简单,但是存在一个局限性,就是所有的id必须是相连的如果出现断开的,将出现错误,例如在id=15   和id=17 之间没有id=16 这条记录,在在id=15获取下一条,id=17获取上一条则会出现错误,那么这就不能使用上面的sql语句了

下面是一个很好的sql语句用来处理上一条,下一条的操作

提取上一条的sql语句

select * from news where id<currentId order by id desc limit 0,1;


或者是

select * from news where id<currentId order by id desc limit 1;


提取下一条的sql语句

select * from news where id >currrentId  order by id asc limit 0,1;


或者是

select * from news where id >currrentId  order by id asc limit 1;


至于关于超链接设置的这里就不讲了,如有任何疑问请留言!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  sql 数据库 cms mysql