关于MSSQL存储过程中使用游标的一个小例子(学习)
声明:本例转自http://hi.chinaunix.net/?214950/viewspace-1713,主要是为了学习之用
比如有个表,内容如下
id,text
1,春花秋月何时了
2,往事知多少
3,小楼昨夜又春风
4,古国不堪回首月明中
......
其中id为系列号,text为文本内容,我想使用个sql语句,达到如下效果:
查询text列,查询的值累加,即查询结果显示如下:
春花秋月何时了 往事知多少 小楼昨夜又春风 古国不堪回首月明中 ...
用存储过程+游标实现,示例如下
ALTER PROCEDURE [dbo].[abc]
-- Add the parameters for the stored procedure here
@p1 int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
declare @ttt varchar(100);
declare @bbb varchar(10);
set @ttt=''
set @bbb=''
declare mycur cursor for
select meno from test where gid= @p1
open mycur
fetch next from mycur into @bbb
WHILE @@FETCH_STATUS = 0
BEGIN
set @ttt=@ttt+@bbb
fetch next from mycur into @bbb
end
close mycur
select @ttt
-- Insert statements for procedure here
END
下面是自己的小测试:
ALTER PROCEDURE dbo.fetchtest
/*
(
@parameter1 int = 5,
@parameter2 datatype OUTPUT
)
*/
AS
declare @ss varchar(2000),@aa varchar(2000),@cc varchar(2000)
set @ss=''
set @aa=''
set @cc=''
SELECT @@CURSOR_ROWS
DECLARE authors_cursor CURSOR FOR
SELECT top 100 RegionalName,userid FROM areaInfo
OPEN authors_cursor
FETCH NEXT FROM authors_cursor into @ss,@cc--这里要与字段数相同
while @@FETCH_STATUS=0
begin
set @aa=@aa+ltrim(@cc)
FETCH NEXT FROM authors_cursor into @ss,@cc--这里要与字段数相同
end
SELECT @@CURSOR_ROWS
SELECT @aa
CLOSE authors_cursor
DEALLOCATE authors_cursor
转载于:https://www.cnblogs.com/dongpo888/archive/2009/02/24/1397388.html
关于MSSQL存储过程中使用游标的一个小例子(学习)相关推荐
- mysql 存储过程声明式游标_Mysql 存储过程中使用游标循环读取临时表
游标 游标(Cursor)是用于查看或者处理结果集中的数据的一种方法.游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力. 游标的使用方式 定义游标:Declare 游标名称 CURSOR ...
- mysql中leave和_MySQL数据库之Mysql存储过程使用LEAVE实现MSSQL存储过程中return语法
本文主要向大家介绍了MySQL数据库之Mysql存储过程使用LEAVE实现MSSQL存储过程中return语法 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. DELIMITER ...
- mysql存储过程的一个小例子
目录标题 mysql存储过程的一个小例子 mysql存储过程的一个小例子 1.首先创建一张表来供我们学习存储过程 三个字段,分别为:id.name.age 其中 id为自增字段,name与age不能为 ...
- SQL Server 中关于 @@error 的一个小误区
原文:SQL Server 中关于 @@error 的一个小误区 在SQL Server中,我常常会看到有些前辈这样写: if(@@error<>0)ROLLBACK TRANSACTIO ...
- 飞鸽传书举一个小例子
飞鸽传书举一个小例子,每个程序窗口右上角都有三个按钮,如最小化.关闭等.乔布斯觉得不好看,不易用,他提出改用红绿蓝的交通灯.这样修改后,果然 Mac OS 漂亮和易用了很多. 目前互联网和手机上的应用 ...
- C# 实现 rtc_通过Xlua实现unity热更新的一个小例子
通过Xlua实现unity热更新的一个小例子 一.介绍 热更新是指在更新游戏资源或者逻辑的时候不需要开发者将游戏再打包.发布.玩家重新下载安装包,而是可以通过将需要更新的资源打包成AssetBun ...
- unity案例 mysql lua_通过Xlua实现unity热更新的一个小例子
通过Xlua实现unity热更新的一个小例子 一.介绍 热更新是指在更新游戏资源或者逻辑的时候不需要开发者将游戏再打包.发布.玩家重新下载安装包,而是可以通过将需要更新的资源打包成AssetBun ...
- 网站制作---asp操作数据库的一个小例子
qq交流群:创梦技术交流群:251572072 教程下载,在线交流:创梦IT社区:www.credream.com 一般用在asp网站中比较常见: asp操作数据库的一个小例子: id=reques ...
- CapsuleNet的一个小例子
引用YouTube上一个up主的视频,讲解一个capsulenet的一个小例子 识别的过程 假设我们要识别右面的"船",经过卷积得到2个识别矩形和三角形的胶囊(即向量,之前一篇博客 ...
最新文章
- Linux进程间通信(IPC)-------消息队列
- oracle的md5加密
- find linux 目录深度_浪里淘沙,详解Linux系统中Find命令的实用技巧
- android gone动画_Android动画之淡入淡出
- DevExpress之TreeList用法
- 清华ACL'22 | 一文读懂刘知远所在实验室18篇论文详情
- 运维讨厌流浪地球的原因
- iic调试软件上时钟芯片测试,时钟芯片的测试方法和系统 Clock chip testing methods and systems...
- 【语义分割】Pyramid Scene Parsing Network(PSNET)
- Oracle的sql条件带有,oraclesql语句的if
- 初始化 git 仓库
- 32*32的booth算法的乘法器
- Atitit 软件开发中 瓦哈比派的核心含义以及修行方法以及对我们生活与工作中的指导意义...
- 2022年襄阳中级工程师职称水平能力测试成绩出来了吗?
- 【无用之书】侦探小说的二十条规则
- Java分页类定义和使用
- 51单片机 ADC0809模数转换与显示+Proteus仿真
- maven-setting
- 最全内部审核、管理评审过关全集,细节齐了
- 上海海事大学自动化专业C语言课程代码参考(第九周)
热门文章
- 集合 Subset Sums
- ef mysql 数据模型,EF Core使用CodeFirst在MySql中创建新数据库以及已有的Mysql数据库如何使用DB First生成域模型...
- qt 判断ctrl键被按下_惊雷!证监会公告,又一家千亿白马股被按下“暂停键”...
- anaconda如何做python笔记_Anaconda常用命令笔记
- c++ 32位有符号的整数_【LeetCode】字符串分类字符串转换整数 (atoi)
- 2019-11-08 频域的直观感受
- 递归回溯最简单易懂的小例子
- 大牛的距离(笑cry)精简算法
- ios绘图基本图形之线条
- Framelayout