--普通游标
------------------------------------------------------
declare @sql nvarchar(500) --sql必须是nvarchar类型
declare @task_id bigint
declare @task_ids varchar(30)
declare @orgcode varchar(2)
declare @count int
declare @tableName varchar(100)--这个变量是个varchar
declare @datatableName varchar(100)
declare orgcode_cursor cursor
for
select orgcode from lib_org where len(orgcode)=2 and orgcode <> -1
open orgcode_cursor
fetch next from orgcode_cursor into @orgcode
while(@@fetch_status =0)
begin
---开始取一个省的所有任务id
set @tableName = 'lib_task_p'+@orgcode
--set @datatableName = 'lib_task3_p'+@orgcode
--set @task_ids = '3,6,9'
--set @datatableName = 'lib_task2_p'+@orgcode
-- set @task_ids = '2,5,8'
set @datatableName = 'lib_task1_p'+@orgcode
set @task_ids = '1,4,7'
set @sql = 'select @a=count(*) from '+@tableName+' where uiid not in(select fk_task_id from '+@datatableName+') and yyyy = 2009 and mm in(7,8) and fk_task_level = 3 and fk_tasktype_id in('+@task_ids+') and actstatus<>0'
EXEC sp_executesql @sql,N'@a decimal(18,0) output',@count output
if @count<>0
begin
print 'orgcode:'
print @orgcode
print @count
end
---结束取一个省的所有任务id
fetch next from orgcode_cursor into @orgcode
end
close orgcode_cursor
deallocate orgcode_cursor
--动态游标
declare @sql nvarchar(500)
declare @tablename varchar(20)
declare @task_id bigint
set @tablename = 'lib_org'
--只有下面两句有区别
set @sql = 'declare pcursor cursor for select uiid from '+@tablename
exec (@sql)
open pcursor
fetch next from pcursor into @task_id
while(@@fetch_status=0)
begin
print @task_id
fetch next from pcursor into @task_id
end
close pcursor
deallocate pcursor
---------------------------------------
分享到:
相关推荐
DB2游标及动态SQL,异常处理,sqlcode,sqlstate
SQL游标原理和使用方法.docSQL游标原理和使用方法.doc
静态、动态sql及各种游标,适合初学者学习
SQL语句\sql 游标总结SQL语句\sql 游标总结SQL语句\sql 游标总结
SQL游标小计
本文讲述了SQL游标的应用,首先详细讲述游标的用法,而后通过实例解释游标的用法.
SQL游标深处.SQL游标深处.SQL游标深处.SQL游标深处.SQL游标深处.SQL游标深处.SQL游标深处.SQL游标深处.SQL游标深处.
SQL游标简介SQL游标简介SQL游标简介SQL游标简介
sql游标示例
SQL游标原理和使用方法,适合新老手使用
学会了里边的东西 基本上你就算出师了 SQL经典游标使用方法SQL经典游标使用方法
sql server 游标实例sql server 游标实例sql server 游标实例sql server 游标实例
SQL游标使用金典,主要是基础知识的应用!
虽然游标能做的事,也可以利用DELPHI的while not qry1.Eof do...来完成,但学学还有有用的。 我想在数据库里实现循环应该比在程序里实现来得快吧? 高手莫入。
--以下是把批号拆分的游标 declare @EntryID int --定义变量行号 declare @BillNo varchar(100) --定义变量单据号 declare @Number varchar(100) --定义变量物料代码 declare @qty decimal(18,6) --定义变量数量 ...
一个简单的用法一个简一个简单的用法一个简单的用法单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法一个简单的用法
sql游标的运用,以及视图view的运用、
一、SQL server 游标的简单使用 一个对表进行操作的T-SQL语句通常都可产生或处理一组记录,但是许多应用程序,尤其是T-SQL嵌入的主语言,通常不能把整个结果集作为一个单元来处理,这些应用程序就需要用一种机制来...
sql游标遍历实例
SQL Server 游标用法 , 游标 Demo