SQL SERVER while循环
SQL SERVER while循环
在SQL数据库中,可以通过WHILE实现循环,下面就将为您介绍SQL循环执行while控制,希望对您提升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 关键字后的任何语句。
实例:
USE pubs
GO
WHILE (SELECT AVG(price) FROM titles) < $30
BEGINUPDATE titlesSET price = price * 2SELECT MAX(price) FROM titlesIF (SELECT MAX(price) FROM titles) > $50BREAKELSECONTINUE
END
设置个变量,就能实现for(i=0;i<10,i++)
DECLARE @i int
set @i=0
WHILE @i<10
BEGIN
//语句序列
…
set @i=@i+1
END
示例
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'
SQL SERVER while循环相关推荐
- SQL Server 自动循环归档分区数据脚本
SQL Server 自动循环归档分区数据脚本 原文:SQL Server 自动循环归档分区数据脚本 标签:SQL SERVER/MSSQL SERVER/数据库/DBA/表分区 概述 在很多业务场景 ...
- Sql Server 存储过程 循环处理字符串的每个字符
可以使用 WHILE 循环和 ASCII 函数来处理字符串的每个字符,并使用空格进行比较.以下是一个示例存储过程: CREATE PROCEDURE ReplaceString@inputString ...
- 删除不需要的(辅助)SQL Server事务日志文件
This article explores the use of multiple SQL Server Transaction Log Files and the process of removi ...
- Oracle 9i与MS SQL Server 2000之比较连载五.zz
http://kb.cnblogs.com/a/1153156 Oracle 9i与MS SQL Server 2000之比较连载五 2008-04-14 18:13 四.Oracle中新的数据库对象 ...
- oracle+循环插入sql,SQL server,Oracle循环插入百万数据
SQL server,Oracle循环插入百万数据 SQL server,Oracle循环插入百万数据 压测时常需要往数据库插入大量数据,下面是我往两个数据库插入数据时用的脚本 declare @ma ...
- sql游标 while_用SQL Server中的排名函数替换SQL While循环和游标,以提高查询性能
sql游标 while SQL While loop and cursor are the most common approach to repeat a statement on conditio ...
- sql server 循环_学习SQL:SQL Server循环简介
sql server 循环 Loops are one of the most basic, still very powerful concepts in programming – the sam ...
- sql中的while循环_SQL While循环:了解SQL Server中的While循环
sql中的while循环 The SQL While loop is used to repeatedly execute a certain piece of SQL script. SQL Whi ...
- Sql Server常用命令整理篇:生成连续日期序列并循环
1.生成日期序列 特别注意:经验证number不能超过2048,超过部分不可用 --生成日期序列,特别注意,经验证number不能超过2048,超过部分不可用 select observedate s ...
最新文章
- eclipse与SVN 结合(删除SVN中已经上传的问题)
- 01背包 + 概率 之 hdu 2955
- 啊啊啊...每次需求评审总被boss虐成狗?解药来了
- 用JavaScript fetch API取数据遇到CORS policy问题
- Linux 内核宏 time_after解析
- cisc 和 risc_RISC和CISC | 电脑组织
- org.apache.ibatis.binding.BindingException: Type interface com.kuang.dao.UserDao is not known to the
- CentOS 安装WildFly Jboss10
- 移除mac下 .Ds_Store的解决办法
- django mysql处理_利用Django去操作数据库并完成简易的登录及编辑功能
- SQL获取当前时间的前10天
- A very hard mathematic problem(二分)
- Linux系统服务 2 ---- DNS基础及域名系统架构
- 数学分析教程(科大)——2.1笔记+习题
- w7为什么计算机没有摄像头.,W7笔记本摄像头怎么打开
- GD32F130之LVD低压检测
- Houdini 求中点,点连成线
- python中的随机数种子seed()
- 排名第一《羊了个羊》我通关了
- 广州大学计算机学院网安学硕复试经历
热门文章
- python range从大到小排列_python 十大经典排序算法
- 万字详解,JDK1.8的Lambda、Stream和日期的使用详解
- leetcode的回溯算法题目用这个模板解题,一网打尽,so easy!!!
- 带你学python基础:文件读写,俗称IO操作
- Error:Unable to resolve target android-19
- Oracle数据库之PL/SQL
- 【LeetCode每周算法】零钱兑换
- 为什么有人说面向对象编程就是面向接口编程?
- python中为什么训练数据_python训练数据时打乱训练数据与标签
- mysql主主mycat_MySQL数据库主主复制并基于MyCAT实现高可用