SQL中循环语句的效果实例

数据库 SQL Server
在SQL数据库中,循环操作是最常见的操作之一,下面就将以实例的方式示范SQL中循环语句的效果,供您参考。

循环语句是SQL中最常用的语句之一,下面就将以实例的方式示范SQL中循环语句的效果,供您参考,希望对您学习SQL中循环语句能够有所帮助。

假设HRS_Group存在7条记录,GroupID分别为3、4、5、6、7、13、14

执行如下Sql语句:

  1. declare @sSql varchar(8000)  
  2. select @sSql = '' 
  3. select @sSql = @sSql + 'alter table #tt add A' + rtrim(convert(varchar(20), GroupID)) + ' decimal(5, 1) ' + CHAR(10)  
  4.  from HRS_Group where Type = 0 order by GroupID  
  5. select @sSql 

执行得到@sSql的值:

  1. ----------------------------------------------------------------------------------------  
  2. alter table #tt add A3 decimal(5, 1)   
  3. alter table #tt add A4 decimal(5, 1)   
  4. alter table #tt add A5 decimal(5, 1)   
  5. alter table #tt add A6 decimal(5, 1)   
  6. alter table #tt add A7 decimal(5, 1)   
  7. alter table #tt add A13 decimal(5, 1)   
  8. alter table #tt add A14 decimal(5, 1)  
  9. ----------------------------------------------------------------------------------------  

该Sql语句

  1. select @sSql = @sSql + 'alter table #tt add A' + rtrim(convert(varchar(20), GroupID)) + ' decimal(5, 1) ' + CHAR(10)  
  2.  from HRS_Group where Type = 0 order by GroupID 

是通过以GroupID大小为顺序,从数据库7次取值而对@sSq进行了7次拼接,起到了循环的效果,CHAR(10)表示换行


若将以上语句做如下修改:

 

  1. declare @sSql varchar(8000)  
  2. select @sSql = 'alter table #tt add A' + rtrim(convert(varchar(20), GroupID)) + ' decimal(5, 1) ' + CHAR(10)  
  3.  from HRS_Group where Type = 0 order by GroupID  
  4. select @sSql 

执行得到@sSql的值:

  1. ----------------------------------------------------------------------------------------  
  2. alter table #tt add A14 decimal(5, 1)   
  3. ---------------------------------------------------------------------------------------- 

是通过以GroupID大小为顺序,从数据库7次取值而对@sSq进行了7赋值,但因为没有拼接,所以@sSql只保留了第7次的赋值
 

 

 

【编辑推荐】

SQL中类似For循环处理的实例

对存储过程代替SQL语句的讨论

SQL聚合函数之Avg 函数

Transact-SQL变量的声明

设置Transact-SQL变量中的值

责任编辑:段燃 来源: 互联网
相关推荐

2010-09-09 16:34:19

SQL循环while

2010-09-10 14:26:06

SQLFor循环

2010-09-08 16:26:26

SQL循环语句

2009-08-17 17:15:48

C# 进度条效果

2009-09-01 16:14:06

C#窗口抖动

2010-09-08 16:17:37

SQL循环语句

2010-09-17 14:48:28

SQL条件语句

2010-09-08 16:38:13

SQL循环语句

2010-09-10 09:57:27

DIV样式

2013-01-14 17:18:43

Android开发TextView跑马灯效果

2010-09-26 10:08:43

sql条件语句

2010-09-13 17:11:42

sql server

2013-07-05 10:26:40

Android

2011-08-10 14:40:23

iPhone动画

2010-09-08 17:10:24

SQL循环语句

2022-07-28 14:33:32

webviewweb页面

2010-09-17 13:40:43

SQL更新

2017-01-22 17:25:55

Android放大镜效果源码分析

2010-10-21 14:27:35

SQL Server时

2010-08-03 11:29:09

Flex全屏
点赞
收藏

51CTO技术栈公众号