• [轉]mysql 控制语句(if,loop ,leave,iterate,while)


    我们先来介绍一下 oracle 的控制语句吧
     

    if else elsif while for loop

    而在mysql中的控制语句是:

     

    if else elseif while loop repeat leave iterate

     

    下面通过例子说明:

      

    delimiter //
    create procedure pro
    begin
     declare @a int default 5;
     if @a>2 then
       select @a;
     elseif @a<5 then
      select 2;
     end if;
    end
    //

     

    下面是 loop的使用

       loop的使用 要结合leave 和 iterate

       看到名字 都已经大概 猜测到了 意思

      leave 就是离开退出循环 而 iterate就是 继续迭代

     

    delimiter //
    create procedure pro
    begin
     declare a int default 1;
     label1: loop
        if a<6 then
         select a;
         set a=a+1;
      iterate label1;
        end if;
        leave label1;
       end loop label1;
    end
    //

    下面一个就是 repeat拉

     

    delimiter //
    create procedure pro
    begin
      declare a int default 3;
      repeat
       select a;
       set a=a+1;
      untile a>5 end repeat;
    end
    //

     

    最后一个就是while语句啦

         

    delimiter //
    create procedure pro
    begin
     declare a int default 4;
     while a<10 do
       select a;
       set a=a+1;
     end while;
    end
    //

     

    从上面我给出的例子 可以看出来 和oracle的区别 还是很大的

     赋值是通过 set 而不是通过:=  声明变量是通过declare来在BEGIN块中来声明的

     

    oracle中有for 并且 大部分都是用的loop语句

      for i in 1..5

          loop

           语句

    end loop;

      while a>5

        loop

     end loop;

     

    loop

       exit when();

     end loop

  • 相关阅读:
    使用xtrabackup对MySQL进行备份和恢复
    魔棒工具RegionGrow算法简介
    编程之美扫雷篇
    从繁体字到书法
    谈读书如何才能提升你的工作能力
    魔兽争霸拼图照片一张
    做你心目中的达文西
    六一儿童节的礼物那些游戏中你不知道的玩法
    DIY手工制作Rhombicuboctahedron
    ul样式与jquery1.4.1冲突
  • 原文地址:https://www.cnblogs.com/Athrun/p/2119358.html
Copyright © 2020-2023  润新知