精华内容
下载资源
问答
  • while跳出本次循环
    千次阅读
    2021-01-18 22:46:20

    mysql while,loop,repeat循环,符合条件跳出循环_MySQL

    1、while循环

    DELIMITER $$

    DROP PROCEDURE IF EXISTS `sp_test_while`$$

    CREATE PROCEDURE `sp_test_while`(

    IN p_number INT, #要循环的次数

    IN p_startid INT #循环的其实值

    )

    BEGIN

    DECLARE v_val INT DEFAULT 0;

    SET v_val=p_startid;

    outer_label: BEGIN #设置一个标记

    WHILE v_val<=p_number DO

    SET v_val=v_val+1;

    IF(v_val=100)THEN

    LEAVE outer_label; #满足条件,终止循环,跳转到end outer_label标记

    END IF;

    END WHILE;

    SELECT ‘我是while外,outer_label内的SQL‘;

    #由于这句SQL在outer_label代码块内,所以level后,这句SQL将不会执行;

    #只要是在outer_label代码块内 任意位置 Leave outer_label,那么Leave后的代码将不再执行

    END outer_label;

    SELECT CONCAT(‘test‘,v_val) AS tname;

    END$$

    DELIMITER ;

    CALL sp_test_while(1000,0);

    2、loop 循环

    DELIMITER $$

    DROP PROCEDURE IF EXISTS `sp_testloop`$$

    CREATE PROCEDURE `sp_testloop`(

    IN p_number INT, #要循环的次数

    IN p_startid INT #循环的其实值

    )

    BEGIN

    DECLARE v_val INT DEFAULT 0;

    SET v_val=p_startid;

    loop_label: LOOP #循环开始

    SET v_val=v_val+1;

    IF(v_val>p_number)THEN

    LEAVE loop_label; #终止循环

    END IF;

    END LOOP;

    SELECT CONCAT(‘testloop_‘,v_val) AS tname;

    END$$

    delimiter ;

    CALL sp_testloop(1000,0);

    3、repeat循环下载地址

    DELIMITER $$

    DROP PROCEDURE IF EXISTS `sp_test_repeat`$$

    CREATE PROCEDURE `sp_test_repeat`(

    IN p_number INT, #要循环的次数

    IN p_startid INT #循环的其实值

    )

    BEGIN

    DECLARE v_val INT DEFAULT 0;

    SET v_val=p_startid;

    REPEAT #repeat循环开始

    SET v_val=v_val+1;

    until v_val>p_number #终止循环的条件,注意这里不能使用‘;‘分号,否则报错

    END repeat; #循环结束

    SELECT CONCAT(‘test‘,v_val) AS tname;

    END$$

    DELIMITER ;

    CALL sp_test_repeat(1000,0);

    以上就是mysql while,loop,repeat循环,符合条件跳出循环_MySQL的内容,更多相关内容请关注PHP中文网(www.gxlcms.com)!

    本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

    本文系统来源:php中文网

    更多相关内容
  • while循环语法 while 条件; do … ; done脚本案例一:需求:每隔半分钟检查系统负载,当系统负载大于10的时候就发一封邮件告警。最小单元是任务计划 cron 脚本示例:[root@garytao-01 aming]# vi while1.sh[root@...

    while循环

    语法 while 条件; do … ; done

    脚本案例一:

    需求:每隔半分钟检查系统负载,当系统负载大于10的时候就发一封邮件告警。最小单元是任务计划 cron 脚本示例:

    [root@garytao-01 aming]# vi while1.sh

    [root@garytao-01 aming]# cat while1.sh

    #!/bin/bash

    while true

    # 冒号 : 表示死循环的意思,或者1,或者 true都是死循环

    do

    load=`w|head -1|awk -F 'load average: ' '{print $2}'|cut -d. -f1`

    if [ $load -gt 10 ]

    then

    /usr/local/sbin/mail.py xxx@qq.com "load high" "$load"

    fi

    sleep 30

    #休眠30秒,因为检查系统负载,不需要一直去检查,过一会再看

    done

    [root@garytao-01 aming]# sh -x while1.sh

    + true

    ++ w

    ++ head -1

    ++ awk -F 'load average: ' '{print $2}'

    ++ cut -d. -f1

    + load=0

    + '[' 0 -gt 10 ']'

    + sleep 30

    + true

    ++ w

    ++ head -1

    ++ awk -F 'load average: ' '{print $2}'

    ++ cut -d. -f1

    + load=0

    + '[' 0 -gt 10 ']'

    + sleep 30

    ^C

    [root@garytao-01 aming]#

    #若想这种脚本不意外的终止,可以打开screen,在screen跑脚本

    知识点:

    w #查看系统负载 ;

    uptime #可以直接显示 w 系统负载的第一行,就可以省去 head -1

    head -1 #取第一行

    awk -F 'load average: ' '{print $2}' # 以'load average: '分隔,输出第二段

    cut -d . -f1 # 以 . 分隔 取第一段

    脚本案例二:

    需求:在循环过程过,需要用户去输入一个数字;输入的不是数字,是数字,输入为空;回应相应的结果。

    [root@garytao-01 shell]# vim while2.sh

    [root@garytao-01 shell]# cat while2.sh

    #!/bin/bash

    while :

    do

    read -p "Please input a number: " n

    if [ -z "$n" ] #如果变量输入的为空

    then

    echo "you need input sth."

    #你需要输入东西

    continue

    #continue 重新回到循环,变量为空时,再次重复执行任务

    fi

    n1=`echo $n|sed 's/[0-9]//g'`

    #判断n是否为纯数字

    if [ ! -z "$n1" ]

    then

    echo "you just only input numbers."

    #你只能输入一个纯数字,如果不能纯数字,继续执行任务,如果是结束,退出循环

    continue

    fi

    break

    #break 退出循环

    done

    echo $n

    [root@garytao-01 shell]# sh -x while2.sh

    + :

    + read -p 'Please input a number: ' n

    Please input a number:

    + '[' -z '' ']'

    + echo 'you need input sth.'

    you need input sth.

    + continue

    + :

    + read -p 'Please input a number: ' n

    Please input a number: 23

    + '[' -z 23 ']'

    ++ echo 23

    ++ sed 's/[0-9]//g'

    + n1=

    + '[' '!' -z '' ']'

    + break

    + echo 23

    23

    break跳出循环

    break 常用于循环语句中

    跳出整个循环语句,直接结束所有循环

    把整个循环退出

    [root@garytao-01 aming]# vi break1.sh

    [root@garytao-01 aming]# cat break1.sh

    #!/bin/bash

    for i in `seq 1 5`

    do

    echo $i

    #输出i的值

    if [ $i -eq 3 ]

    #比较数字,用-eq ;若是比较的是字符串,那需要用 ==

    then

    break

    fi

    echo $i

    done

    echo aaaaa

    [root@garytao-01 aming]# sh break1.sh

    1

    1

    2

    2

    3

    aaaaa

    [root@garytao-01 aming]# sh -x break1.sh

    ++ seq 1 5

    + for i in '`seq 1 5`'

    + echo 1

    1

    + '[' 1 -eq 3 ']'

    + echo 1

    1

    + for i in '`seq 1 5`'

    + echo 2

    2

    + '[' 2 -eq 3 ']'

    + echo 2

    2

    + for i in '`seq 1 5`'

    + echo 3

    3

    + '[' 3 -eq 3 ']'

    + break

    + echo aaaaa

    aaaaa

    [root@garytao-01 aming]#

    continue结束本次循环

    忽略continue之下的代码,直接进行下一次循环

    [root@garytao-01 aming]# vi continue.sh

    [root@garytao-01 aming]# cat continue.sh

    #!/bin/bash

    for i in `seq 1 5`

    do

    echo $i

    if [ $i -eq 3 ]

    then

    continue

    fi

    echo $i

    done

    echo aaaaa

    [root@garytao-01 aming]# sh continue.sh

    1

    1

    2

    2

    3

    4

    4

    5

    5

    aaaaa

    [root@garytao-01 aming]# sh -x continue.sh

    ++ seq 1 5

    + for i in '`seq 1 5`'

    + echo 1

    1

    + '[' 1 -eq 3 ']'

    + echo 1

    1

    + for i in '`seq 1 5`'

    + echo 2

    2

    + '[' 2 -eq 3 ']'

    + echo 2

    2

    + for i in '`seq 1 5`'

    + echo 3

    3

    + '[' 3 -eq 3 ']'

    + continue

    + for i in '`seq 1 5`'

    + echo 4

    4

    + '[' 4 -eq 3 ']'

    + echo 4

    4

    + for i in '`seq 1 5`'

    + echo 5

    5

    + '[' 5 -eq 3 ']'

    + echo 5

    5

    + echo aaaaa

    aaaaa

    [root@garytao-01 aming]#

    exit退出整个脚本

    直接退出整个脚本,脚本示例

    可以定义退出的数值,可以用于确定脚本运行到什么地方的时候,结束

    [root@garytao-01 aming]# vi exit.sh

    [root@garytao-01 aming]# cat exit.sh

    #!/bin/bash

    for i in `seq 1 5`

    do

    echo $i

    if [ $i -eq 3 ]

    then

    exit

    fi

    echo $i

    done

    echo aaaaa

    [root@garytao-01 aming]# sh exit.sh

    1

    1

    2

    2

    3

    [root@garytao-01 aming]# sh -x exit.sh

    ++ seq 1 5

    + for i in '`seq 1 5`'

    + echo 1

    1

    + '[' 1 -eq 3 ']'

    + echo 1

    1

    + for i in '`seq 1 5`'

    + echo 2

    2

    + '[' 2 -eq 3 ']'

    + echo 2

    2

    + for i in '`seq 1 5`'

    + echo 3

    3

    + '[' 3 -eq 3 ']'

    + exit

    展开全文
  • 先来看代码person={'name':'Helen','password':'123'}while True:nm=input('请输入用户名')psw=input('请输入密码')if nm==person['name'] and psw==person['password']:cmd=input('请输入指令:')while cmd!...

    5d021b4c69bbd481.jpg

    先来看代码person={'name':'Helen','password':'123'}

    while True:

    nm=input('请输入用户名')

    psw=input('请输入密码')

    if nm==person['name'] and psw==person['password']:

    cmd=input('请输入指令:')

    while cmd!='quit':

    cmd = input('请输入指令:')

    break

    再看一个# while True:

    # cmd=input('请输入指令')

    # if cmd=='quit':

    # break

    else:

    print('账号或密码错误\n')

    continue

    总结:

    1、while用于构建循环,while True是无限循环;

    2、break用于退出for循环和while循环,当有多层循环时,退出break所在的循环体

    3、return是用来结束函数返回数据用的,适用对象不对,所以有报错

    4、continue用来结束本次循环体,从新回到continue语句所在的循环体开始下一次循环;本例中开始执行:while True:

    以上就是python如何跳出while循环的详细内容,更多请关注php中文网其它相关文章!

    article_wechat2021.jpg?1111

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!

    展开全文
  • 跳出while循环的三种方法

    万次阅读 2020-07-29 22:49:01
    跳出while循环的三种方法(以Python代码为例) 文章目录跳出while循环的三种方法(以Python代码为例)方法1: break语句方法2: 标志位方法3: 判断不结束 在《Python编程从入门到实践》书中有这么一道习题:比萨配料: ...

    跳出while循环的三种方法(以Python代码为例)


    在《Python编程从入门到实践》书中有这么一道习题: 比萨配料: 编写一个程序,提示用户输入一系列的比萨配料,并在用户输入’quit’时结束循环,说我们会在比萨中添加这种配料。

    这道题主要考察while循环。

    方法1: break语句

    # 方法1
    pizza = []
    while True:
        message = input("你要加入什么佐料?")
        if message == 'quit':
            break
    
        pizza.append(message)
        print("已加入" + message)
    
    print(pizza)
    

    方法2: 标志位

    # 方法2
    active = True
    pizza = []
    while active:
        message = input("你要加入什么佐料?")
        if message == 'quit':
            active = False
        else:
            pizza.append(message)
            print("已加入" + message)
    
    print(pizza)
    

    方法3: 判断不结束

    # 方法3
    message = ""
    pizza = []
    while message != 'quit':
        message = input("你要加入什么佐料?")
        if message != 'quit':
            pizza.append(message)
            print("已加入" + message)
    
    print(pizza)
    

    我在这里简单的写一下,这算是基本原理吧。实际应用可能更加复杂。但要有这些思路和小技巧。希望能对你有些启发。

    一个简单的运行示例:

    while循环

    展开全文
  • WHILE 循环 while`,中文叫 当…时,其实就是当条件满足时就执行代码,一旦不满足了就不执行了 语法while (条件) { 满足条件就执行 } 因为满足条件就执行,所以我们写的时候一定要注意,就是设定一个...
  • 1、while循环DELIMITER$$DROPPROCEDUREIFEXISTS`sp_test_while`$$CREATEPROCEDURE`sp_test_while`(INp_numberINT,#要循环的次数INp_startidINT#循环的其实值)BEGINDECLAREv_valINTDEFAULT0;SETv_val=p_start...
  • 在你这个题目中,1653有一个循环嵌套,其中for{}是一个循环,do{}while是for循环里面的嵌套循环,所以如果当前i%3的结果为真,那么执行continue,也就是跳出当前循环,继续执行下一次的do{}while循环。2. 所以...
  • 一、for循环需求:计算1-100所有数字的和[root@linux-01 shell]# vi for1.sh#!/bin/bashfor i in seq 1 100doecho $i //先把100个数字打印出来done[root@linux-01 shell]# sh for1.sh //执行脚本打印出100个数字继续...
  • C语言中的do—while()循环,nreak和continue在其中的应用。
  • 跳出while循环得三种方法

    千次阅读 2021-04-22 17:50:34
    目录1:while循环简介2:指定条件的三种形式2.1:直接使用条件表达式式来作为指定条件的判断2.2:使用变量来作为指定条件的判断2.3:使用标志的方法作为指定条件的判断 1:while循环简介 当条件没有满足指定条件的...
  • for循环 for循环的基本结构: for 变量名 in 循环的条件; do command done 编写for循环脚本:计算1到100所有数字和: #!/bin/bash sum=0 for i in `seq 1 100` do echo "$sum + $i" sum=$[$sum+$i...
  • 在 PHP 中,提供了下列循环语句:while- 只要指定的条件成立,则循环执行代码块do...while- 首先执行一次代码块,然后在指定的条件成立时重复这个循环for- 循环执行代码块指定的次数foreach-...
  • 刚刚我们学习了使用break...而continue语句用于跳出当前循环,然后继续进行下一轮循环,continue语句同样应用于while循环和for循环中。在for循环中使用continue在下图中,不使用continue语句,最终运行结果应该是1到...
  • 使用continue跳出本次循环

    千次阅读 2020-01-03 09:48:15
    刚刚我们学习了使用break跳出...而continue语句用于跳出当前循环,然后继续进行下一轮循环,continue语句同样应用于while循环和for循环中。 在for循环中使用continue 在下图中,不使用continue语句,最终运行结果应...
  • for循环 语法:for 变量名 in 条件 ; do done; 案例一: 计算1-100所有数字的和。 脚本: #!/bin/bash sum=0 for i in `seq 1 100` do sum=$[$sum+$i] done echo $sum 结果: [root@congji ~]# sh...
  • while(true)何时跳出循环?

    千次阅读 2021-02-13 01:00:33
    while(true)是不会跳出循环的。在while中括号里为一个条件值,只要当条件为真的时分,会执行这条语句,直到条件为false的时分,则会跳出循环语句。而在这里括号里的值为true,也就意味着会不断执行该条语句。除了...
  • JavaScript里的while循环

    2022-07-30 14:53:20
    重复执行一些操作,在….期间,所以就是在满足条件期间,重复执行某些代码。2.循环的本质就是以某个变量为起始值,然后不断产生变化量,慢慢靠近终止条件的过程。所以,while循环需要具备三要素。...
  • 常见对主要分为,条件语句、循环语句、跳转语句。 1、if语句 if语句是一种判断语句。 语法: if(条件){ 条件成立时执行的代码 } if...else语句当条件成立时,则执行if部分的代码块; 条件不成立时,则...
  • shell中循环for与while和如何跳出循环的使用
  • mysql while,loop,repeat循环,符合条件跳出循环_MySQL1、while循环DELIMITER $$DROP PROCEDURE IF EXISTS `sp_test_while`$$CREATE PROCEDURE `sp_test_while`(IN p_number INT, #要循环的次数IN p_startid INT #...
  • mysql触发器跳出当前循环方法set @num=@UnitLength/3;label:while iset @length=(select SUBSTRING(@unit_sid_fk,1,@UnitLength-3*i));set @sms_content=(select sms_content from sms_config where sms_type='...
  • 我有一个通过检查数据库mysql中的退出详细信息来返回值的函数在函数内部我有一个来自sql查询的数组的while循环。我想打破while循环如果它找到一个马赫我应该怎么做?这是我的代码:function chklogin(){$query = ...
  • Android做while循环

    2021-06-05 14:50:51
    } while (Yval=="Y"); s = Yval; 我最初将光标指向我访问的最后一行,然后我创建一个循环来遍历DONE列中的值,而不是在列的行中有Y的情况下停止.当N出现在循环中时,循环应该停止. 但它不起作用. Yval永远不等于“Y”....
  • 众所周知,MySQL中的游标循环操作常用的有三种,LOOP,REPEAT,WHILE.三种循环,方式大同小异.以前从没用过,所以记下来,方便以后查阅. 1.REPEAT 代码如下: REPEAT  Statements;  UNTIL expression END REPEAT demo ...
  • 退出本次循环,继续下一次循环 break 1 fi fi compression_file_array_length=`expr ${compression_file_array_length} - 1` compression_file_array_number=`expr ${compression_file_array_number} + 1` done 如上...
  • Oracle,跳出游标循环

    千次阅读 2021-05-07 05:02:58
    1,跳出游标的循环,不执行遍历了。方法一:gotofor c_row in 游标 loopif 条件 thendbms_output.put_line('测试跳出循环');goto breakLoop;end if;end loop;<>首先在循环外面定义一个:<>。这里的方法...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 32,988
精华内容 13,195
关键字:

while跳出本次循环