在做应用程序的时候,经常会遇到需要实现上一条、下一条的功能,例如,一个CS的项目中,首先有一个列表窗体,选中列表中的一项后点击“编辑”按钮,会进入到一个编辑窗体,在这个窗体上有可以需要使用上一条、下一条这样的功能,那么如何来实现它呢?

思路:其实可以把它看成一种分页,只不过这种分页是一页一条而已。另外,还需要有一个定位,即当前是哪一条记录。解决办法其实只需要加一个where条件即可。请看下面的语句:

上一条:
select top 1 * from t_subject where subID not in
(select top 1 subid from t_subject where subid=102 order by subid ) order by subid

下一条:(反向排序即可)

select top 1 * from t_subject where subID not in
(select top 1 subid from t_subject where subid=102 order by subid desc ) order by subid desc

注:1. 其中的102表示的是当前的记录,实际使用时可以通过传参实现。

2. 分页方法有很多种,可以使用其他的分页实现方法。

另一种思路(哈哈,觉得有点笨):如果表中有一个连续的标识列字段,那么每次取的时候就可以直接将ID+1或ID-1了。但是,即使表中有标识列,也不可能保证编号是连续的,怎么办呢?可以创建一个临时表,表中除了包含原来表中的内容外,再使用IDENTITY()函数为其添加一个标识列,这样应该就OK了。

转载于:https://www.cnblogs.com/lgzslf/archive/2009/07/07/1518058.html

如何实现上一条、下一条的功能相关推荐

  1. sql 新增加一列序号_取出上一条下一条的 sql语句

    在开发中,很多公司用的ID为自增的,上一条下一条的获取方法不在此类,一般如 select * from tablename where id select * from tablename where ...

  2. Javascript特效之可翻阅上一条下一条的动态文字

    Javascript特效之可翻阅上一条下一条的动态文字 我们经常会看到网站有一些自动跳动的新闻动态,今天来看看新闻动态怎么实现还有怎么手动选择上一条和下一条. 先来看看效果图: 点击箭头则会显示上一条 ...

  3. mysql 数据上一条下一条问题

    mysql 数据上一条下一条问题 需求说明 操作 需求说明 数据上一条下一条,是个老需求了 ,大多数是用在新闻类的功能上,一个数据列表按照一定条件然后按固定的一些字段排序,并且只给文章id参数,查过很 ...

  4. SQL取上一条, 下一条记录方法

    如果我们需要取id为3的前后的1条记录.  就可以用以下方法 取上一条记录: select * from `表名` where `id`<3 order by `id` desc limit 1 ...

  5. php 上一条下一条,thinkPhp里添加显示上一条和下一条

    newsinfo.php里的代码 if($front['id']!=null){ $id  = $front['id']; echo "上一条:$front[title]"; }e ...

  6. mysql数据库查上一条下一条记录,mongodb查询当前记录的上一条和下一条

    前言 本博客是很久之前搭建的.前台模板也是很久之前写的,技术方面难免有些过时.代码书写的也比较乱.博客能保持到现在,还多谢各位同学不断的提意见和建议!前几天有同学提出,看博客比较费劲,能否新增上一篇文 ...

  7. 上一条 下一条 新闻

    select   top   1   *   from   News   where   NewsID>getid     --下一条新闻 select   top   1   *   from ...

  8. 简单分页,无需插件 实现 上一页|下一页 分页功能

    分页功能 五花八门,插件的使用也很方便.最近做项目,分页功能是写好的了,利用bootstarp 简单实现的, 类似于这种 但由于数据越来越多,这种循环的方式很不好看.于是想到上一页| 下一页 分页 的 ...

  9. php如何实现上一篇下一篇的功能

    每天都抽一点时间总结一下. 在实际php开发当中,关于一些发布新闻或者文章,一般会涉及上一篇,下一篇的功能.在做这个功能时,首先会想到,如何一步的实现呢?我会想到的是,怎样拿到上一篇的id,和下一篇的 ...

  10. vue列表跳转详情页面上一条 下一条 的实现

    首先在点击跳转的地方传值 on: {click: () => {this.$router.push({path:`./detail`,query:{detailId: params.row.de ...

最新文章

  1. commont-net.jar 代码结构图
  2. 网速不给力,我们自己给——MinGW的手动安装与配置
  3. placeholder在不同浏览器下的表现及兼容方法
  4. 三维重建-opencv实现sfm
  5. CodeForces 459C(构造题)
  6. 翻译 | ORB: An efficient alternative to SIFT or SURF(ORB:对SIFT或SURF的一种有效选择)
  7. 定义一个圆类——Circle,在类的内部提供一个属性:半径(r),同时 提供 两个 方 法 : 计算 面积 ( getArea() ) 和 计算 周长(getPerimeter()) 。
  8. uniapp可以封装组件嘛_uniapp聊天App实例|vue+uniapp仿微信界面|红包|朋友圈
  9. 软件构造学习笔记-第六周
  10. jdeveloper优化:
  11. c#中的long类型示例_C#中带示例的无符号字节数组
  12. python dataframe转置_Dataframe数据的增删改查,对齐(相加),转置,按值(索引)排序
  13. linux自学笔记--vim和文本三剑客基础
  14. PyTorch 1.0 中文文档:torchvision 参考
  15. idea增加文件自动添加版本控制
  16. JavaScriptjQuery.检测相等和存在
  17. python3捕获异常_Python 异常处理和捕获信息教程|python3教程|python入门|python教程
  18. 面试题|集合ArrayList list = new ArrayList(20) 中的list扩充几次?
  19. wp文件转shp_MapGIS教程:转换shp文件的技巧
  20. 在Word中,如何删除页眉页脚

热门文章

  1. 全新互联网四通手机震撼上市
  2. 在GridView里使用CheckBox
  3. 如何在重装SAV10.1/SCS3.1服务器后继续管理原来的客户端
  4. 在html中代码规范是哪个键,HTML代码规范经验
  5. matlab更改矩阵的值,怎么修改矩阵中的某些元素 或者简单点说保留矩阵中的元素...
  6. python自关联_django自关联,auth模块
  7. Netty核心模块组件
  8. CVX学习笔记(转载
  9. vivado 启动过程中报错
  10. JVM 虚拟机类加载过程和双亲委派机制