T-SQL编程,SQL server中的变量,流程控制语句

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_36027342/article/details/89841640

T-SQL编程:是SQL server数据库对标准SQL的扩展

PL/SQL是Oracle数据库对标准SQL的扩展

一.变量

1.全局变量

      名称以@@开头,用于记录SQL server的各种状态信息,在服务器级别定义,由系统定义和维护,对于用户是只读的,在整个示例范围都有效

     例:

     @@versionà记录SQL server的版本信息

     @@errorà记录上一条语句的错误号,如果没有,则为0

     @@rowcountà记录上一条语句受影响的行数

     @@servicenameà服务器的名称

2.局部变量

     @开头,有效范围:从声明变量开始到批处理或存储过程的结尾

     例:

declare @avgGrade int   --声明变量
select @avgGrade=avg(Grade) from SC whre Cno='2' --查询平均成绩,并赋值

二.流程控制语句

1.if-else

declare @avgGrade int--声明变量
select @avgGrade=avg(Grade) from SC whre Cno='2'--查询平均成绩,并赋值
if @avgGrade>=85
  print '考的不错'
else
  print '继续努力'

2.while 

--eg:while 1+2+3+..+100


declare @i int,@sum int;
 set @i=1;set @sum=0;
while @i<=100
begin
 set @sum=@sum+@i;
 set @i=@i+1;
end;
 print @sum;

3.case

select Sno,Sname,Ssex,Sdept,
   case Sdept
     when 'cs'then '计算机科学'
     when 'ma' then '数学'
     when 'is'then '信息'
     else '其他'
     end 专业
from Student

select Sno,Cno,Grade,
   case
	when Grade is null  then '无成绩'		
	when Grade >=90  then '优秀'
	when Grade >=80  then '优秀'		
	when Grade >=70  then '优秀'
	when Grade >=60  then '优秀'
	else '不及格'
	end 级别
 from SC;

三.批处理

 一条或多条SQL语句,一次性发送到SQL sever数据库服务器进行执行,SQL server数据库服务器讲批处理的语句编译成一个可执行单元,称为执行计划,当编译错误的时候不会执行;运行时错误

扫描二维码关注公众号,回复: 6122621 查看本文章

go:批处理结束

 

 

猜你喜欢

转载自blog.csdn.net/weixin_36027342/article/details/89841640