zoukankan      html  css  js  c++  java
  • 存储过程中的while语句

    WHILE

    设置重复执行 SQL 语句或语句块的条件。只要指定的条件为真,就重复执行语句。可以使用 BREAK 和 CONTINUE 关键字在循环内部控制 WHILE 循环中语句的执行。

    语法

    WHILE Boolean_expression

        { sql_statement | statement_block }

        [ BREAK ]

        { sql_statement | statement_block }

        [ CONTINUE ]

    参数

    Boolean_expression

    返回 TRUE 或 FALSE 的表达式。如果布尔表达式中含有 SELECT 语句,必须用圆括号将 SELECT 语句括起来。

    {sql_statement | statement_block}

    Transact-SQL 语句或用语句块定义的语句分组。若要定义语句块,请使用控制流关键字 BEGIN 和 END。

    BREAK

    导致从最内层的 WHILE 循环中退出。将执行出现在 END 关键字后面的任何语句,END 关键字为循环结束标记。

    CONTINUE

    使 WHILE 循环重新开始执行,忽略 CONTINUE 关键字后的任何语句。

    注释

    如果嵌套了两个或多个 WHILE 循环,内层的 BREAK 将导致退出到下一个外层循环。首先运行内层循环结束之后的所有语句,然后下一个外层循环重新开始执行。

    示例

    A. 在嵌套的 IF...ELSE 和 WHILE 中使用 BREAK 和 CONTINUE

    在下例中,如果平均价格少于 $30,WHILE 循环就将价格加倍,然后选择最高价。如果最高价少于或等于 $50,WHILE 循环重新启动并再次将价格加倍。该循环不断地将价格加倍直到最高价格超过 $50,然后退出 WHILE 循环并打印一条消息。

    USE pubs
    GO
    WHILE (SELECT AVG(price) FROM titles) < $30
    BEGIN
    UPDATE titles
    SET price = price * 2
    SELECT MAX(price) FROM titles
    IF (SELECT MAX(price) FROM titles) > $50
    BREAK
    ELSE
    CONTINUE
    END
    PRINT 'Too much for the market to bear'

  • 相关阅读:
    React Native解决Android的WebView无法执行injectedJavaScript代码
    Java中BitSet使用(转)
    Java StringTokenizer分割字符串
    【git】git常用命令简介
    【细说Java】方法重载的简单介绍
    【细说Java】Java封箱拆箱的一些问题
    【Java解惑】表达式问题
    【细说Java】Java的重写与隐藏
    【细说Java】揭开Java的main方法神秘的面纱
    Maven简介
  • 原文地址:https://www.cnblogs.com/stoneJin/p/2191580.html
Copyright © 2011-2022 走看看