SQL Server中的流控制语句

Posted 呆子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server中的流控制语句相关的知识,希望对你有一定的参考价值。

  • begin···end

该语句定义sql代码块,通常在if和while语句中使用

declare @num int ;
set @num=0;

while  @num<10

begin
  set @num=@num+1;
  print hello word

end

 

  • if···else

条件判断语句,其中else是可选的

if  (select sex from UserBasic where name=张三)=1
    print 张三的性别是:男
else
    print 张三的性别是:女

 

  •  while、break、continue
declare @num int ;
set @num=0;

while  @num<10

begin
  set @num=@num+1;
  print hello word
    if @num=2
        continue
    if @num=5
        break
end

说明:本例输出5行 hello word

 

  • goto label(自定义标记)

该语句用来无条件地将语句的执行顺序转到用户定义的lable处

declare @num int;
set @num=0;

echo:
    print hello word
set @num=@num+1;

while  @num<10
begin
  goto echo
end

 

  • return

该语句用来无条件退出一个查询或一个过程

declare @num int ;
set @num=0;

while  @num<10

begin
  set @num=@num+1;
  print hello word
    if @num=5
        return
end

 

  • waitfor delay/time

该语句用来定义某天的一个时刻,执行一个语句块。waitfor delay ‘time‘表示要等待多长时间,waitfor time ‘time‘表示要等到哪个时刻执行。

示例:10秒之后输出‘hello word’

waitfor delay 00:00:10
print hello word 

--

print hello word waitfor delay 00:00:10

 

示例:12:00钟输出‘hello word’

waitfor time 12:00:00
print hello word 

--

print hello word waitfor time 12:00:00

 

SQL Server中的流控制语句介绍的这里。

以上是关于SQL Server中的流控制语句的主要内容,如果未能解决你的问题,请参考以下文章

缺少 SQL SERVER 2014 代码片段

使用实体框架迁移时 SQL Server 连接抛出异常 - 添加代码片段

使用 IF..ELSE IF 控制 T-SQL SP 中的流 - 还有其他方法吗?

SQL server学习——T-SQL编程之存储过程

Sql - goto 语句

SQL Server编程(01)流程控制