T_SQL编程赋值、分支语句、循环
咱们在C#中会常用到赋值、循环、分支语句什么的
今天咱们来看下当初在C#用到的一点东西放到SQL中是怎么使用的
创建变量
在C#中创建一个值类型变量很简单 int a;这就可以了
SQL: declare @a int; --这就是在SQL中创建一个int类型的变量a
一定要记得在SQL中创建一个变量的前面一定要加上@
赋值
set @a = 123
现在就是给a赋值为123
赋值也要加上@
输出
在VS中输出大家还记得吧 Console.Write/Console.WriteLine
那在SQL中输出是这样的,分两种
第一种
select @a --这只是映射到结果集里面,注意,是 映射
第二种
print @a --这才是在SQL中的输出
分支语句
依旧是if..........else
但是稍有变化
1 declare @a int 2 declare @b int 3 4 set @a = 123 5 set @b = 456 6 7 8 if @a > @b 9 begin 10 select '错' 11 end 12 else 13 begin 14 select '对' 15 end
输出的时候记得全选 SQL不会跟VS一样自动给你一句一句执行 SQL是你选中哪句他给你执行哪句
所以创建变量和赋值变量要一起选中进行执行,否则SQL就会给你抛出个鄙视的眼光问候你,else if同理
循环
循环也略有不同
1 declare @a int 2 3 set @a = 1 4 5 while @a <= 10 6 begin 7 select @a 8 select @a = @a + 1 9 10 end
但是循环结果是这个样子的
如果是这样
1 declare @a int 2 3 set @a = 1 4 5 while @a <= 10 6 begin 7 8 select @a+1 9 select @a 10 11 end
那这样子就是无限循环了
不要问我为什么,我刚重启了SQL
因为没注意到暂停键在什么地方
对了,查看下CPU和内存能占用多少
下回再说
其实也没有用了多少内存 也没消耗多少资源 就算按照这个格式再怎么改 也没多大占用量 单单一个int已经限制了 无聊的时候可以玩玩儿