sql 遍历结果集

declare @temp table
(
    [id] int IDENTITY(1,1),
    [Name] varchar(10)
)
--select * from @temp
declare @tempId int,@tempName varchar(10)

insert into @temp values(‘a‘)
insert into @temp values(‘b‘)
insert into @temp values(‘c‘)
insert into @temp values(‘d‘)
insert into @temp values(‘e‘)

--select * from @temp

WHILE EXISTS(select [id] from @temp)
begin
SET ROWCOUNT 1
select @tempId = [id],@tempName=[Name] from @temp
SET ROWCOUNT 0
delete from @temp where [id] = @tempId

print ‘Name:----‘[email protected]
end

  

时间: 2024-10-03 22:40:07

sql 遍历结果集的相关文章

DB2 SQL查询结果集自动编号、返回条数范围控制研究

DB2 SQL查询结果集自动编号.返回条数范围控制研究 摘要: DB2 SQL语句实现查询的记录自动编号.并根据编号进一步实现记录范围控制.分页查询. 环境: IBM DB2 Universal V9.1 Windows XP Professional 要求:写一个SQL语句,在查询结果中要显示出记录序号,这个序号是是根据记录顺序自动生成的. 测试初始化DB2 SQL脚本: drop table t_test; create table t_test (bs        bigint     

Result Cache特性之SQL QUERY结果集缓存

在Oracle 11g中,推出了Result Cache新特性,对于结果集合进行缓存处理,减少了IO,提高了性能.服务器端结果集缓存位于共享池中,缓存这SQL query结果,包括sql查询结果.函数结果.OLAP应用程序能够显著受益于服务器端结果集缓存.当然,这个益处有赖于应用程序本身.其中比较好的使用场景就是从一个大表中查询返回小部分数量的结果,比如数据仓库环境.例如,类似于物化视图通过表固化查询结果,结果集缓存也可以让你启用高级查询重写功能. 这一新特性包括三部分: 1)SQL QUERY

oracle sql调优集

************************************************************ 1.新建调优集对象 ************************************************************ ---授权 grant ADMINISTER ANY SQL TUNING SET to scott; ---删除存在的STS BEGIN DBMS_SQLTUNE.DROP_SQLSET( sqlset_name => 'OCPYAN

T-sql 遍历结果集

DECLARE @TAB TABLE( [科室编号] [varchar](50) NULL, [科室编码] [varchar](50) NULL, [科室名称] [varchar](50) NULL, [拼音] [varchar](50) NULL ) INSERT INTO @TAB SELECT * FROM Table_uvi_dept SELECT * FROM @TAB WHILE((SELECT COUNT([科室编号]) FROM @TAB)>0) BEGIN PRINT 1 DE

阿里云重磅发布RDS for SQL Server AlwaysOn集群版

2018年双十一刚过,阿里云数据库发布RDS for SQL Server AlwaysOn集群版,这是业界除微软云SQL Database外,首家云计算公司基于SQL Server最新AlwaysOn核心技术实现的数据库集群版,并且是经过双十一检验的商业化版本. 全形态的产品集合 纵观整个RDS for SQL Server的产品迭代图,AlwaysOn集群版的上线标志这SQL Server数据库在阿里云RDS平台的全面覆盖,阿里云数据库实现了针对企业客户不同阶段的产品体系的匹配. 基础版针对

在论坛中出现的比较难的sql问题:1(字符串分拆+行转列问题 SQL遍历截取字符串)

原文:在论坛中出现的比较难的sql问题:1(字符串分拆+行转列问题 SQL遍历截取字符串) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. 所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路. 求SQL遍历截取字符串 http://bbs.csdn.net/topics/390648078 从数据库中读取某一张表(数据若干),然后将某一字段进行截取.比如:字段A    字段Ba/a/c      xa/b

Hibernat 原生SQL运行结果集处理方法

hibernate对原生SQL查询执行的控制是通过SQLQuery接口进行的. Session.createSQLQuery(); 使用list()方法可以把Session.createSQLQuery()的结果集处理成List返回,将返回一个Object数组(Object[])组成的List,数组每个元素都是CATS表的一个字段值.Hibernate会使用ResultSetMetadata来判定返回的标量值的实际顺序和类型. 如果要避免过多的使用ResultSetMetadata,或者只是为了

sql遍历树

oracle有直接的sql来遍历一颗树的子节点和父节点 遍历一个节点的所有子节点(classid的值就是该节点的值) select *  from organization_ a start with a.organizationid = 185137connect by prior a.organizationid = a.parentorganizationid 遍历一个节点的所有父节点(classid的值就是该节点的值) select *  from organization_ a sta

SQL遍历字符串的方法

字符串穿越: 1.创建一个只存递增序列(1…n)的表——Temp,并将它与目标字符串所在的表Src进行笛卡尔运算.(Temp表的记录数要不小于遍历的目标字符串的长度) 2.过滤掉序列值大于串长的行. 3.用substr()内置函数进行遍历. 表结构如下: Temp                                                         Src id                                                     id