SQLストアド・プロシージャのエントリー・ベース(プロセス制御)について

1536 ワード

ここでは、ストレージプロセスのプロセス制御、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


-------


上のこれらの基本的な流れの制御は、基本的に私たちの日常の開発の需要を満たすことができて、しばらく考えたのはこんなに多くて、いつ他の状況を思い出して、適切に補充します.