• MySQL数据库8(二十三)流程结构(if / while)


    流程结构

    流程结构:代码的执行顺序

    If分支

    基本语法

    If在mysql中有两种基本用法:

    1、用在select查询当中,当作一种条件来判断

    基本语法:if(条件,为真结果,为假结果)

    最好取别名 if(条件,为真结果,为假结果) as 别名

     

    2、用在复杂的语句块中(函数/存储过程/触发器)

    基本语法:

    if 条件表达式 then

           满足条件要执行的语句;

    end if;

    复合语法

    复合语法:代码的判断存在两面性,两面都有对应的代码执行

    基本语法:

    if 条件表达式 then

           满足条件要执行的语句;

    else

           不满足条件要执行的语句;

           //如果还有其他分支(细分),可以在里面再使用if

           if 条件表达式 then

           满足条件要执行的语句;

           end if;

    end if;

    while循环

    循环体都是需要在大型代码块中使用。

    基本语法

    while 条件 do

           循环体;

    end while;

    结构标识符

    结构标识符:为某些特定的结构进行命名,然后为的是在某些地方使用名字。

    基本语法

    标识名字:while 条件 do

           循环体;

    end while[标识名字];

    标识符的存在主要是为了循环体中使用循环控制。在mysql中没有continue和break,有自己的关键字替代。

    iterate:迭代,就是以下的代码不执行,重新开始循环(continue)

    leave:离开,整个循环终止(break)

    基本语法:

    标识名字:while 条件 do

           if 条件判断 then

                  循环控制;

                  iterate/leave 标识名字;

           end if;

    循环体;

    end while[标识名字];

    case循环

    基本语法:

    case [条件]

    when条件1 then 语句1

    when条件2 then 语句2

    ….

    else 语句n

    end case

    case可以用在select语句中,但不能用在where语句中。

    1、判断的同时改变其值

    select OperatorAccount,

     

            case

         when CreateTime>'2016-02-14 16:24:42' then 'after'

     

             when CreateTime<'2016-02-14 16:24:42' then 'before'

     

             else 'now' end stage

    from log_login order by CreateTime DESC

     

    2、拆分一行为多列

  • 相关阅读:
    apicloud 运费计算js+页面
    css让字体细长
    vue 请求完接口后执行方法
    js监听当前页面再次加载
    用apicloud+vue的VueLazyload实现缓存图片懒加载
    git merge和git rebase的区别(转)
    yuan先生博客链接
    django组件之contenttype(一)
    Django的orm中get和filter的不同
    python第三方库requests详解
  • 原文地址:https://www.cnblogs.com/sun-yanglu/p/9612896.html
Copyright © 2020-2023  润新知