工作中用到的记录一下,游标的详细定义及说明请百度

--游标格式化数据

DECLARE cursor_jxsmb CURSOR FOR --定义一个游标
SELECT F0 FROM dbo.JXSMB2019; --定于游标的数据源
OPEN cursor_jxsmb --打开游标 DECLARE @LAST NVARCHAR(4000),@THIS NVARCHAR(4000) --定义两个变量,用来保存上一行和当前行的数据
FETCH NEXT FROM cursor_jxsmb INTO @THIS --设置@this 为当前行的数据 WHILE @@FETCH_STATUS=0 --判断游标是否为读取失败,读取失败则为-1 代表最后一行
BEGIN
IF LEN(@THIS)<>0 --判断当前读取行字段是否为空
BEGIN
SET @LAST=@THIS --如果不为空则不更新,并且设置@last为当前行的数据
--PRINT @LAST
END
ELSE
BEGIN --如果为空则更新当前行的数据为上一行
UPDATE JXSMB2019 SET F0=@LAST WHERE CURRENT OF cursor_jxsmb --更新数据,where 只更新当前游标所在行
--PRINT @LAST
END FETCH NEXT FROM cursor_jxsmb INTO @THIS     --继续读取下一行数据 END CLOSE cursor_jxsmb --关闭游标
DEALLOCATE cursor_jxsmb --释放游标

  

SqlServer 游标逐行更新数据,根据上一行的数据来更新当前行的更多相关文章

  1. 构建数据湖上低延迟数据 Pipeline 的实践

    T 摘要 · 云原生与数据湖是当今大数据领域最热的 2 个话题,本文着重从为什么传统数仓 无法满足业务需求? 为何需要建设数据湖?数据湖整体技术架构.Apache Hudi 存储模式与视图.如何解决冷 ...

  2. easyui获取选中行上一行的数据

    text: 'XX',            iconCls: 'icon-ok',            handler: function () {                var rowI ...

  3. sql里将重复行数据合并为一行,数据用逗号分隔

    一.定义表变量 DECLARE @T1 table ( UserID int , UserName ), CityName ) ); ,'a','上海') ,'b','北京') ,'c','上海') ...

  4. SqlServer——游标

    参考:http://www.cnblogs.com/94cool/archive/2010/04/20/1715951.html  http://www.cnblogs.com/moss_tan_ju ...

  5. sql 循环处理表数据中当前行和上一行中某值相+/-

    曾经,sql中循环处理当前行数据和上一行数据浪费了我不少时间,学会后才发现如此容易,其实学问就是如此,难者不会,会者不难. 以下事例,使用游标循环表#temptable中数据,然后让当前行和上一行中的 ...

  6. jqgrid 选中行触发编辑,切换下一行时验证和异步保存上一行数据

    有时,我们需要批量修改或填写一些相似的数据.可以以jqgrid表来显示,可能的效果如下: 选中触发行编辑参考:jqgrid 单击行启用行编辑,切换行保存原编辑行 本文主要说说验证和异步保存上一条数据的 ...

  7. linux向文件中添加数据,数据被追加到了上一行的行尾

    当我们在windows上新建了文件,并且要上传到linux上时,一定要在文件后加上空格,否则就会出现标题上讲的,数据被追加到了上一行的行尾,而不是新起一行,但是如果是在linux上新建的文件,则没有这 ...

  8. SqlServer游标的创建与使用

    前言 大家都对SqlServer视图.存储过程.触发器的创建与使用有一定的了解了,我们来看下什么是游标,怎么使用,什么时候用. SqlServer视图的创建与使用 SqlServer存储过程的创建与使 ...

  9. (转)sqlserver游标概念与实例全面解说

    首先声明:该文章转自http://www.cnblogs.com/wudiwushen/archive/2010/03/30/1700925.html  的博客 引言  我们先不讲游标的什么概念,步骤 ...

随机推荐

  1. CSS清除浮动的一种简便的方法

    在使用的浮动的元素的父元素添加该CSS样式 .clear{ overflow: auto; }

  2. Python 文件的基本操作

    打开文件的模式有: r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内容:] a,追加模式.[可读:   不存在则创建:存在则只追加内容:] "+" 表示可 ...

  3. SpringBoot关于SpringDataJpa中findOne()方法报错问题

    问题描述: 首先用的SpringDataJPA的1.11版本,可以使用findOne()方法根据id查询 然后我使用了2.0.5版本,发现findOne()方法报错了,不能用来当作根据id查询了. 当 ...

  4. C# T 泛型类,泛型方法的约束条件用法

    class A<T> where T:new() 这是类型参数约束,where表名了对类型变量T的约束关系.where T:A 表示类型变量是继承于A的,或者是A本省.where T: n ...

  5. vue中是使用富文本编辑器vue-quill-edit

    之前使用的富文本编辑器是uEditor,kindEditor,感觉不太方便 近期项目vue单页面,就使用这个编辑器组件吧! 一.安装  cnpm install vue-quill-editor 二. ...

  6. html和css进阶

    html和css进阶 相对地址与绝对地址 网页上引入或链接到外部文件,需要定义文件的地址,常见引入或链接外部文件包括以下几种: <!-- 引入外部图片 --> <img src=&q ...

  7. vue-组件注册

    <div id="app-7"> <ol> <!-- 现在我们为每个 todo-item 提供 todo 对象 todo 对象是变量,即其内容可以是动 ...

  8. Oracle单机Rman笔记[6]---记一次oracle脱机异地还原

    系统情况介绍 正式环境:windows 2008 r2-32bit/ Oracle: Release 11.2.0.1.0 目标环境:windows 2012 Standard-64bit / Ora ...

  9. There are multiple modules with names that only differ in casing. 黄色warning

    There are multiple modules with names that only differ in casing.有多个模块同名仅大小写不同This can lead to unexp ...

  10. js--map函数的使用

    map( )  属于操作数组的方法. 包含三个参数,item,index,arr 看一份代码: let arr = [ {title:'aaa',hot:true}, {title:'fff',hot ...