T-SQL 循环表的一种方式
2018-06-22 07:14:16来源:未知 阅读 ()
原文来自: https://www.lesg.cn/netdaima/sqlservert-sql/2016-463.html
SsqlServer 中循环表有几种方式
1.临时表
2.游标
3….
下面就来说说怎么用临时表格来循环数据
create table t( id int not null primary key identity(1,1), dt datetime not null default(getdate()), name varchar(100) not null default('') ) --测试案例,给表插入数据 declare @count int ;set @count=0; while(@count<100) begin set @count= @count+1 insert into t (name) values (NEWID()) end select * from t --判断临时表是否存在 如果存在则删除临时表 if exists(select 1 from tempdb..sysobjects where id=object_id('tempdb..#t_m')) begin drop table #t_m --删除临时表 end --将数据插入临时表 select * into #t_m from t --开始循环表数据 declare @tmid int ; -- 创建一个临时变量 While (exists ( select 1 from #t_m)) BEGIN select top 1 @tmid =id from #t_m --拿出一条数据复制在临时变量里面, 用于待会删除该数据使用 -- /* 好了 在这里使用 @tmid 来操作 该条数据吧 lesg.cn */ -- DELETE #t_m WHERE ID=@tmid; --删除一条临时表的数据 END if exists(select 1 from tempdb..sysobjects where id=object_id('tempdb..#t_m')) begin drop table #t_m --操作结束后删除临时表 end
思路如下;
1.创建临时表格
2.while 循环临时表; 循环条件是 临时表是否存在
3. 获取一条临时表的数据; 记得使用top 1 否则数据一多起来性能低到你发疯 获得临时变量,临时变量等于该条数据的ID
select
top
1 @tmid =id
from
#t_m
4.使用临时变量来操作数据
5.整个循环结束后删除临时表
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:.Net实现拉勾网爬虫
下一篇:Log4net入门(帮助类篇)
- 快速排序 2018-12-02
- ABP之N层架构 2018-08-17
- JS 控制 两个ListBox之间选择移动项 (转发) 2018-06-22
- sqlserver的四种分页方式 2018-06-22
- ADO.NET json数组多条记录执行在DAL层循环(执行存储过程 2018-06-22
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash