alter PROCEDURE [dbo].[sp_gongzi] @gongzi_yf varchar(7) as
DECLARE  @input_id varchar(20)
DECLARE  @sk_sum decimal(18, 3)
DECLARE  @sk_sum_yk decimal(18, 3)
BEGIN 
    DECLARE cur_input CURSOR  FOR
            select docno from  tc_tab1 where yf = @gongzi_yf    
 
 OPEN cur_input
 
    FETCH  cur_input INTO @input_id
 WHILE @@FETCH_STATUS = 0
      BEGIN
         set @sk_sum = 0    
         set @sk_sum_yk  = 0
         select @sk_sum =  sum(je * case when (hl2 is null) then hl else hl2 end )         
             from sk_dan where docno =@input_id;
        
         select @sk_sum_yk =  sum(je * case when (hl2 is null) then hl else hl2 end )         
             from sk_dan_yk where docno =@input_id;       
               
        set @sk_sum = case when (@sk_sum is null) then 0 else @sk_sum end;       
        set @sk_sum_yk =  case when (@sk_sum_yk is null) then 0 else @sk_sum_yk end;       
       
        update    tc_tab1 set dke2 =  @sk_sum   +   @sk_sum_yk
     where docno = @input_id; 
       
   FETCH  cur_input INTO @input_id
      END
    CLOSE cur_input
    DEALLOCATE cur_input 
    --*/
END

循环处理--sqlserver的更多相关文章

  1. 循环更新sqlserver数据库表ID

    DECLARE @a INTDECLARE aaa CURSOR for select columnID from LNDB_COLUMN_INFO where columnID BETWEEN 22 ...

  2. SQLserver中的常量与变量、判断循环语句

    数据库中的变量与常量 数据库中定义变量 [起临时存储数据的作用] ---数据库中定义变量(运行时要从头到尾进行运行,从定义变量开始到赋值) --前面必须加 declare --定义变量 :    de ...

  3. SqlServer循环 和 批量倒数据

    SqlServer循环语句 declare @i int set @i =1 while(@i<5) begin  set @i = @i+1  insert into text(id,name ...

  4. 20.SqlServer中if跟循环语句

    --if语句declare @i int begin print @i end else --循环语句 declare @i int begin insert into grade(classname ...

  5. sqlserver中的循环遍历(普通循环和游标循环)

    sql 经常用到循环,下面介绍一下普通循环和游标循环 1.首先需要一个测试表数据Student

  6. SQLServer 命令批量删除数据库中指定表(游标循环删除)

    DECLARE @tablename VARCHAR(30),@sql VARCHAR(500)DECLARE cur_delete_table CURSOR READ_ONLY FORWARD_ON ...

  7. Sqlserver循环嵌套

    1.游标的状态,游标的开启游标的选择都是需要注意的. USE [ccnu] GO /****** Object: StoredProcedure [dbo].[P_ADD_DATA_XSBLHYCQK ...

  8. SqlServer循环读取配置

    USE [DB_JP_BaseInfo00] GO /****** Object: StoredProcedure [dbo].[sp_wx_getAppointmentInfo_Str] Scrip ...

  9. SQLServer 自动循环归档分区数据脚本

    标签:SQL SERVER/MSSQL SERVER/数据库/DBA/表分区 概述 在很多业务场景下我们需要对一些记录量比较大的表进行分区,同时为了保证性能需要将一些旧的数据进行归档.在分区表很多的情 ...

随机推荐

  1. Dapper关联查询

    1.一对一: using (IDbConnection connecton = new MySqlConnection(ConfigurationManager.ConnectionStrings[& ...

  2. theano中的dimshuffle

    theano中的dimshuffle函数用于对张量的维度进行操作,可以增加维度,也可以交换维度,删除维度. 注意的是只有shared才能调用dimshuffle() 'x'表示增加一维,从0d sca ...

  3. JavaSE基础知识总结

    最近回顾了一下Java的基础知识,决定写成博客梳理一遍,主要是JavaSE部分最基础的知识,适合考前突击,学后回顾,不适合作为初学材料. 简单的列个目录吧: 一.数据类型和运算符 二.流程控制与数组 ...

  4. ReferenceQueue<T>随笔

    参考资料: ReferenceQueue食用手册 java引用食用手册 ReferenceQueue源代码里面很好的展示了java队列的实现思路, 以及多线程观察者的实现思路 多线程观察者实现思路: ...

  5. 搭建selenium自动化环境步骤

    1.下载pythonhttps://www.python.org/downloads/2.安装2.X或者3.X3.添加环境变量python和pip(与python一起安装)4.下载setuptools ...

  6. Http请求中Content-Type讲解以及在Spring MVC中的应用

    引言: 在Http请求中,我们每天都在使用Content-type来指定不同格式的请求信息,但是却很少有人去全面了解content-type中允许的值有多少,这里将讲解Content-Type的可用值 ...

  7. js 常见混乱

    slice(begin.end) 复制出一个新的数组或是一个新的字符串,其中end 不包括end本身 splice(begin,howmany,item1....itemn) 更改原先的array 会 ...

  8. Unity加载模块深度解析(Shader)

    作者:张鑫链接:https://zhuanlan.zhihu.com/p/21949663来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 接上一篇 加载模块深度解析(二 ...

  9. easyUI的formatter使用

    <table class="easyui-datagrid" style="width:400px;height:250px" data-options= ...

  10. CRC 冗余校验计算

    (1)设G(x)为r阶,则在信息位末尾加r个0形成新信息 r=原信息位数 - 1