zoukankan      html  css  js  c++  java
  • 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、拆分一行为多列

  • 相关阅读:
    BibTex (.bib) 文件的凝视
    SQL注入原理解说,非常不错!
    怎样将文件隐藏在图片中
    白话经典算法系列之五 归并排序的实现
    帮你理解多线程
    很好的理解遗传算法的样例
    薏米红豆粥功效及做法介绍
    Linux makefile 教程 很具体,且易懂
    站点权重对于站点的重要性
    Codeforces Round #250 (Div. 2)——The Child and Set
  • 原文地址:https://www.cnblogs.com/sun-yanglu/p/9612896.html
Copyright © 2011-2022 走看看