server-游标问题 循环结果不是我所想要的。。

问题描述

游标问题 循环结果不是我所想要的。。

一 : 有一张表 Fl_RuKu -- 辅料入库表
另外有一张 fl_KuCun --辅料库存表
二 :初始的时候 Fl_RuKu 表 中有这样的数据

三:运行完之后 fl_KuCun 表 中的数据是如下

三 我觉得 当fl_kucun 表中的第四行数据 应该是10才对。。问题是出不来这个结果,

四:以下是我的代码
declare MyCursor cursor for select KuWei,ShuLiang from FL_RuKu
open MyCursor
declare @KuWei int
declare @ShuLiang decimal(18,2)
fetch next from MyCursor into @KuWei,@ShuLiang
while(@@FETCH_STATUS=0)
begin
declare @ShuLiang_KuCun decimal(18,2)
select top 1 @ShuLiang_KuCun=ShuLiang from FL_KuCun where KuWei=@KuWei order by KuCunID desc
begin

insert into FL_KuCun (KuWei,ShuLiang) values(@KuWei,ISNULL(@ShuLiang_KuCun,0)+@ShuLiang)

  end
fetch next from MyCursor into @KuWei,@ShuLiang

end
close MyCursor
deallocate MyCursor

时间: 2024-08-31 11:35:13

server-游标问题 循环结果不是我所想要的。。的相关文章

SQL Server 游标语句 声明/打开/循环实例_MsSql

SQL Server游标语句使用方法: 复制代码 代码如下: --声明一个游标 DECLARE MyCursor CURSOR FOR SELECT TOP 5 FBookName,FBookCoding FROM TBookInfo//定义一个叫MyCursor的游标,存放for select 后的数据 --打开一个游标 OPEN MyCursor//即打开这个数据集 --循环一个游标 DECLARE @BookName nvarchar(2000),@BookCoding nvarchar(

SQL Server 游标语句 声明/打开/循环实例

SQL Server游标语句使用方法: 复制代码 代码如下: --声明一个游标 DECLARE MyCursor CURSOR FOR SELECT TOP 5 FBookName,FBookCoding FROM TBookInfo//定义一个叫MyCursor的游标,存放for select 后的数据 --打开一个游标 OPEN MyCursor//即打开这个数据集 --循环一个游标 DECLARE @BookName nvarchar(2000),@BookCoding nvarchar(

SQL Server游标实例演示不得不看

以下的文章主要描述的是SQL Server游标实例,假如你在实际操作中遇SQL Server游标实例,但是你却不知道对其如何正确应用,那么以下的文章对你而言一定是良师益友,希望会给你带来一些帮助在此方面. SQL Server游标实例: Declare MyCusror Cursor Scroll     For Select * From Master_Goods Order By GoodsID     Open MyCursor     Fetch next From MyCursor  

sql server 2000中循环插入100万条数据

server|插入|数据|循环 出处:∮明天去要饭's Blog         前段时间在测试100万条以上数据时的分页速度,需要往数据库中插入100万条记录,那个时候插入记录我是用C#写的,后来发现,其实用SQL自已也可以实现的,而且更简单哦!以下是我写的一个实例,很简单,大家应该能看懂的.         declare @i int  --变义变量@i        set @i = 1 --初始化@i为1        while @i < 100 --如果@i小于100,这里改成10

mysql存储过程,实现两个游标的循环

今天用php开发网站,遇到一个需求.统计网站关键词的google流量,计算本周某个关键词对于上周的google流量的增长.goole流量统计是通过日志分析程序获取.本打算差值计算也用php实现,但是一想还要循环查询数据库,会造成数据库压力,于是乎编写了一个存储过程. 首先数据结构: CREATE TABLE `mobile_keywords_weeklog` ( `id` int(11) NOT NULL AUTO_INCREMENT, `topdate` date DEFAULT NULL,

【MySql】MySql存储,游标,循环的简单使用

MySql存储,游标,循环 CREATE PROCEDURE `copy_group`(IN v_sourcegroupid int,IN v_destgroupid int,IN v_projectid int) BEGIN       --声明变量       declare v_oldtestcaseid int;       declare v_testcaseid int;       declare v_stepid int;       declare v_id int;    

有关oracle pl/sql编程中游标和循环的问题

问题描述 有关oracle pl/sql编程中游标和循环的问题 题目: 使用循环和游标实现,查询部门编号为10的员工信息,将查询结果按照员工编号从大到小的顺序排列,输出倒数第二行记录. 我的代码: declare empler emp%rowtype; i number:=0; n number; cursor emp_2 is select * from emp where deptno=10 order by empno desc; begin select count(*) into n

Oracle显示游标的使用及游标for循环_oracle

下面给大家介绍在什么情况下用隐式游标,什么情况下用显示游标: 1.查询返回单行记录时→隐式游标: 2.查询返回多行记录并逐行进行处理时→显式游标 --显示游标属性 declare CURSOR cur_emp IS SELECT * FROM emp; row_emp cur_emp%ROWTYPE; BEGIN OPEN cur_emp; FETCH cur_emp INTO row_emp; WHILE cur_emp%FOUND LOOP dbms_output.put_line(row_

mysql-MYSQL游标REPEAT循环后,无法得到字符串返回值。望指教,谢谢!

问题描述 MYSQL游标REPEAT循环后,无法得到字符串返回值.望指教,谢谢! 我有一个数据表zq +-------+--------+--------------+---------+---------+--------+---------+ | zq_id | zq_dm | zq_mc | zqlx_id | fllx_id | jys_id | zq_cxhq | +-------+--------+--------------+---------+---------+--------