zoukankan      html  css  js  c++  java
  • SQLServer —— 流程控制语句

    一、IF - ELSE

    语法:

    IF(条件)
        BEGIN
            语句1
            语句2
            ...
        END
    ELSE
        BEGIN
            语句1
            语句2
            ...
        END

    说明:

    ELSE是可选部分,如果有多条语句,才需要BEGIN-END语句块。

    实际运用:

    有如下俩张表,学生表和学生成绩表

    现在有这么个需求:查询软件1班的C#考试平均分,如果平均分大于80,则表示优秀,如果大于60,则表示良好,其余部分,则输出还有待加油,如下:

    二、WHILE

    语法:

    WHILE(条件)
        BEGIN
            语句1
            语句2
            ...    
            BREAK
        END

    说明:

    BREAK表示跳出循环,如果有多条语句,才需要BEGIN-END语句块。

    实际运用:

    有如下一张学员成绩表:

    现在有这么个需求,老师觉得这次考试太难了,好多学生C#成绩都不及格,需要手动提高下学生的分数,提高他们的积极性,不及格的都设置成及格,当然,这里最简单的办法是直接按学生C#成绩直接update成60最方便,但是这里为了讲解下WHILE嘛。如下:

    三、CASE-END

    语法:

    CASE
        WHEN 条件1 THEN 结果1
        WHEN 条件2 THEN 结果2
        ...
        ELSE 其他结果
    END

    说明:

    ELSE表示CASE中所有WHEN条件均不为TRUE时返回的结果,如果省略ELSE条件都为FALSE时,CASE语句返回NULL。

    实际运用:

    有如下俩张表,学员表和学员成绩表:

    现在有这么个需求,学员成绩进行拼比,平均分90以上为A,80~89为B,70~79为C,60~69未D,60以下为不及格。方法如下:

  • 相关阅读:
    EF ObjectQuery查询及方法
    Entity Framework --Entity SQL注意事项
    EF中Entity SQL用法
    Navicat for Oracle设置唯一性和递增序列
    Oracle添加自增长字段方法步骤
    MVC5项目中添加Wep API
    C#版 Winform界面 Socket编程 Client客户端
    C#版 Winform界面 Socket编程 Server服务器端
    给缺少Python项目实战经验的人
    python模块之collections
  • 原文地址:https://www.cnblogs.com/xulinjun/p/12026320.html
Copyright © 2011-2022 走看看