关于SQL 存储过程入门基础(流程控制)
程序员文章站
2023-12-10 09:25:16
这里我们讲一下存储过程的流程控制, if else,case ,while,这里没有for循环的 ,这些跟c,c++,c#等语言都差不过的。
一,首先来看if ...
这里我们讲一下存储过程的流程控制, if else,case ,while,这里没有for循环的 ,这些跟c,c++,c#等语言都差不过的。
一,首先来看if else使用
复制代码 代码如下:
if 条件
begin
sql 语句
end
else begin
sql语句
end
看个简单例子
复制代码 代码如下:
declare @id int --声明个变量
set @id=5 --设置厨初始值
if(@id=1)
begin
print 'right'
end
else if(@id=0)
begin
print 'error'
end
else
begin
print 'default'
end
结果我想大家都该晓得了,就不写出来了,这里的begin ,end 也可以不写,不过建议写,这个像c++代码的{},表示一块,写出来层次更加清晰。
当然if 嵌套也是可以的。
二,while的使用
我们来计算下1到100的求和运算
复制代码 代码如下:
declare @i int,@sum int
set @i=0
set @sum=0
while @i<=100 --开始循环
begin
set @i=@i+1 --自增一
set @sum=@sum+@i
end
print @sum
结果
-----------
三,case 多重选择的使用
复制代码 代码如下:
declare @iret int,@var varchar(10)
set @var='a'
select @iret=
case when @var='a' then 0
when @var='b' then 1
when @var='c' then 2
when @var='d' then 3
else -1
print @iret
结果
-------
上面的这些基本流程控制,基本能满足我们日常的开发需求了,暂时想到的就这么多了,哪天想起其他情况,会适当补充。