1.begin…end

语法:

begin

{sql语句或语句块}

end

注意:begin 和end要成对使用

2.if…else

语法:

if  布尔表达式

{sql语句或语句块}

else  布尔表达式

{sql语句或语句块}

例如:

declare @m int,@n int

set @m=4

set @n=2

if @m>@n

print 'X>Y'

else print 'X<Y'

执行结果:


样例数据:


要求:如果ID3-15的分数平均值大于85,则显示“成绩不错”,否则显示“继续努力”

语句及结果:

3.case

2中只有两个条件,如果进行多条件分支选择,则要用到case控制语句。case语句分为两种,一种是简单的表达式,一种是选择表达式。

简单表达式语句:

case 简单表达式

when…then

else

end

选择表达式语法:

case

when…then

else

end

要求:上例中,名字为小明的分到一班,花花的分到二班,其余均分到三班

语句:

SELECT [id] ,[name],[school],[score],
case name
    when '小明' then '一班'
    when '花花' then '二班'
    else '三班'
end
from [Table_1]

(这就是用的简单语句)

执行结果:

要求:90分以上得优秀,80-90分得良好,70-80得一般,60-70得及格,60以下得不及格

语句:

SELECT [id] ,[name],[school],[score],
case
    when score>=90 then '优秀'
    when score>=80  then '良好'
    when score>=70  then '一班'
    when score>=60  then '及格'
    else  '不及格'
end
from [Table_1]

执行结果:

注:case也常常用于交叉表查询,用于获得方便阅读的表格形式。见http://blog.sina.com.cn/s/blog_5f0493880100u74v.html

(转)SQL流程控制语句学习(二):begin…end if…else case的更多相关文章

  1. SQL流程控制语句学习(三):while break continue

    1.while语法 while   布尔表达式 {sql语句或语句块} break  --跳出本层循环 {sql语句或语句块} continue  --跳出本次循环 {sql语句或语句块} 2.whi ...

  2. (转)SQL流程控制语句学习(一):变量及控制语句种类

    1.局部变量 用户自己定义的,称局部变量,以@标识. 作用范围:定义局部变量的批处理.存储过程.触发器和语句块 局部变量的定义: declare @局部变量名 数据类型 注意:变量的类型不能是text ...

  3. PL/SQL流程控制语句

    PL/SQL流程控制语句介绍PL/SQL的流程控制语句, 包括如下三类:控制语句: IF 语句循环语句: LOOP语句, EXIT语句顺序语句: GOTO语句, NULL语句①if语句 IF < ...

  4. Oracle数据库之PL/SQL流程控制语句

    Oracle数据库之PL/SQL流程控制语句 在任何计算机编程语言(如C,Java,C#等)都有各种流程控制语句,同样,在PL/SQL中也存在这样的流程控制结构. 几种常见的流程控制结构: 一.条件结 ...

  5. [推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆)

    原文:[推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆) [推荐]ORACLE PL/SQL编程详解之三: PL/SQL流程控制语句(不给规则,不成方圆) ...

  6. MS SQL 流程控制语句

    Declare   myCursor   cursor   For     Select   *   from   table1         open   myCursor         Fet ...

  7. oracle数据库之PL/SQL 流程控制语句

    介绍 PL/SQL 的流程控制语句, 包括如下三类: 1.控制语句: IF 语句 2.循环语句: LOOP 语句, EXIT 语句 3.顺序语句: GOTO 语句, NULL 语句 一 条件语句 IF ...

  8. javaScript的流程控制语句学习笔记

    JavaScript提供了5种流程控制语句,if条件判断语句,switch语句,for循环语句,while循环语句,do-while循环语句. 1.条件判读语句 对变量或表达式进行判定,并根据判定结果 ...

  9. 5Linux流程控制语句-if、for、while、case语句、计划任务

    流程控制语句.计划任务服务程序,今天记录的有点乱,在预习的时候就记了挺多了,书都花了,上几张图. for 循环      →指定一定的范围 while 循环 →指定一定的条件   for循环语句允许脚 ...

随机推荐

  1. jQuery1.6以上版本prop和attr的区别

  2. HTML5做手机站页面字体显示很小的解决方法

    HTML5做手机站需要加上一部分代码,不然字体会显示很小的,经历了很久的不解才发现的,希望给大家一些帮助 <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD ...

  3. 嵌入式 python之str操作

    1.字符串的对齐方式:①:center(int[,str])>>> string = 'Fishhat'>>> string.center(55)'         ...

  4. centos和Ubuntu区别

    centos中新建的非root用户是没有sudo的权限的,如果需要使用sudo权限必须在/etc/sudoers 中加入账户和权限,所以切换到root账号的时候只需要输入:su,加入root账号的密码 ...

  5. 符合altium designer操作习惯的cadence快捷键设置

    本人开始学习画PCB的时候,用的都是protel,后来转投altium desinger,因为这两个软件上手快且大学里教的也就是这两种.但由于工作需要换成cadence,这就给我造成了很大的困扰,尤其 ...

  6. C++学习笔记--Season 1

    #include <iostream> //预处理 注意:iostream不带.h int main() { std::cout << "Aloha World&qu ...

  7. 改进了UI的界面

    小峤提醒我,千万要记住, 调用JS之前,一定要先加载哟~~~ <!--[if lt IE 9]> <script src="/static/js/jquery1.11.1. ...

  8. QT 设置SizePolicy的例子(简单明了)

    http://hi.baidu.com/cybertingred/item/e8eadaad0c7f62f615329be7   QPushButton *left = new QPushButton ...

  9. CentOS 7 ARM 版发布:支持树莓派2/香蕉派/CubieTruck

    CentOS 7 ARM 版发布:支持树莓派2/香蕉派/CubieTruck 来自CentOS团队的Karanbir Singh很高兴地宣布,面向ARM硬件架构的CentOS 7 Linux已经正式发 ...

  10. 使用 FreeMarker 替换 JSP 的 10 个理由

    你还在使用 Java 服务器页面(俗称JSP)吗?我曾经也是,但是几年前我抛弃了它们,并且再也没有用过JSP了.JSP 是个很好的概念,但是它却剥夺了 web 开发的乐趣. 对我而言,这些都是小事,比 ...