博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL - SQL Server 之WHILE循环的坑
阅读量:4050 次
发布时间:2019-05-25

本文共 1184 字,大约阅读时间需要 3 分钟。

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

语法

-- Syntax for SQL Server and Azure SQL Database    WHILE Boolean_expression        { sql_statement | statement_block | BREAK | 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

在以下示例中,如果产品的平均标价小于 $300,则 WHILE 循环将价格乘 2,然后选择最高价格。 如果最高价格小于或等于 $500,则 WHILE 循环重新开始,并再次将价格乘 2。 该循环不断地将价格乘 2,直到最高价格超过 $500,然后退出 WHILE 循环,并输出一条消息。

USE AdventureWorks2012;  GO  WHILE (SELECT AVG(ListPrice) FROM Production.Product) < $300  BEGIN     UPDATE Production.Product        SET ListPrice = ListPrice * 2     SELECT MAX(ListPrice) FROM Production.Product     IF (SELECT MAX(ListPrice) FROM Production.Product) > $500        BREAK     ELSE        CONTINUE  END  PRINT 'Too much for the market to bear';

 

使用WHILE语句一定要记得加BREAK!!!

 

转载地址:http://umnci.baihongyu.com/

你可能感兴趣的文章
提交jar包到maven中央仓库2019最新版本
查看>>
eclipse servers view tomcat内存配置
查看>>
HandlerExceptionResolver 踩坑记录
查看>>
CodeForces #196(Div. 2) 337D Book of Evil (树形dp)
查看>>
uva 12260 - Free Goodies (dp,贪心 | 好题)
查看>>
uva-1427 Parade (单调队列优化dp)
查看>>
poj 1155 TELE (树形背包dp)
查看>>
【设计模式】学习笔记13:组合模式(Composite)
查看>>
hdu 1011 Starship Troopers (树形背包dp)
查看>>
hdu 1561 The more, The Better (树形背包dp)
查看>>
【设计模式】学习笔记14:状态模式(State)
查看>>
poj 1947 Rebuilding Roads (树形背包dp)
查看>>
【设计模式】学习笔记15:代理模式(Proxy Pattern)
查看>>
hdu 4003 Find Metal Mineral (树形背包dp)
查看>>
uva 1407 Caves (树形背包dp)
查看>>
poj 2486 Apple Tree (树形背包dp)
查看>>
poj 3345 Bribing FIPA (树形背包dp | 输入坑)
查看>>
hdu 4597 Play Game(区间dp)
查看>>
鲍尔默在微软最大的遗憾?
查看>>
外煤关注:百度收购大部分糯米股份
查看>>