SQL高级知识V2——流程控制(上)

简介: SQL数据库开发

流程控制的定义

一般是指用来控制程序执行和流程分至点额命令,一般指的是逻辑计算部分的控制。


流程控制种类

常见的流程控制有以下8种

BEGIN ... END WAITFOR GOTO
WHILE IF ... ELSE BREAK
RETURN CONTINUE

下面给大家具体介绍每种流程控制的用法。


BEGIN...END

BEGIN ... END语句用于将多个T-SQL语句合为一个逻辑块。当流程控制语句必须执行一个包含两条或两条以上的T-SQL语句的语句块时,使用BEGIN ... END语句。


语法

BEGIN  

sql_statement...

END


示例

我们在数据库中打印出我们公众号的名称"SQL数据库开发"

20.png

结果如下:

21.png

这里的SELECT @A就是一条被执行的命令语句。


IF [...ELSE]

IF [...ELSE]表示可以只使用IF,也可以IF和ELSE一起使用,表示条件判断。当满足某个条件使,就执行IF 下面的语句,否则执行ELSE下面的语句


IF语法

IF <条件表达式>

{命令行 | 程序块}

IF示例

如果某字符串的长度大于5,就打印该字符串


22.png

结果:


23.png

这里结果与上面的BEGIN...END一样,但是如果我们将条件改成大于8,结果可能就不是这样的了,小伙伴们可以试一下。


IF...ELSE语法

IF <条件表达式>

{命令行 | 程序块}

ELSE {命令行 | 程序块}


IF...ELSE示例

如果字符串的长度大于10,就打印该字符串,否则打印"字符串长度太短"

24.png

结果:

25.png


很明显字符串"SQL数据库开发"长度不大于10,所以返回ELSE里的结果了。


WHILE

WHILE是循环控制,当满足WHILE后面的条件后,就可以循环执行WHILE下面的语句。通常与CONTINUE和BREAK一起使用,Break命令让程序完全跳出循环语句,结束WHILE命令,CONTINUE是让命令继续返回执行


语法

WHILE  <条件表达式>

{命令行 | 程序块}

CONTINUE

{命令行 | 程序块}

BREAK

{命令行 | 程序块}


示例

有1到10这样一组数字,从1按顺序开始,遇到偶数就跳过,遇到奇数就打印出来,当遇到9就结束打印。26.png


结果如下:27.png

我们只正常打印出来了1-3-5-7其他的不是跳过就是到9就结束了。


相关文章
|
8月前
|
SQL 缓存 关系型数据库
一条SQL执行是如何执行的?它的执行流程是什么?跟我一起探索吧!
一条SQL执行是如何执行的?它的执行流程是什么?跟我一起探索吧!
一条SQL执行是如何执行的?它的执行流程是什么?跟我一起探索吧!
|
4月前
|
SQL 缓存 关系型数据库
揭秘MySQL一条SQL语句的执行流程
以上步骤共同构成了MySQL处理SQL语句的完整流程,理解这一流程有助于更有效地使用MySQL数据库,优化查询性能,及时解决可能出现的性能瓶颈问题。
132 7
|
8月前
|
SQL 存储 数据可视化
10个高级的 SQL 查询技巧
10个高级的 SQL 查询技巧
|
5月前
|
Java 测试技术 容器
从零到英雄:Struts 2 最佳实践——你的Web应用开发超级变身指南!
【8月更文挑战第31天】《Struts 2 最佳实践:从设计到部署的全流程指南》深入介绍如何利用 Struts 2 框架从项目设计到部署的全流程。从初始化配置到采用 MVC 设计模式,再到性能优化与测试,本书详细讲解了如何构建高效、稳定的 Web 应用。通过最佳实践和代码示例,帮助读者掌握 Struts 2 的核心功能,并确保应用的安全性和可维护性。无论是在项目初期还是后期运维,本书都是不可或缺的参考指南。
57 0
|
5月前
|
SQL 存储 数据管理
掌握SQL Server Integration Services (SSIS)精髓:从零开始构建自动化数据提取、转换与加载(ETL)流程,实现高效数据迁移与集成——轻松上手SSIS打造企业级数据管理利器
【8月更文挑战第31天】SQL Server Integration Services (SSIS) 是 Microsoft 提供的企业级数据集成平台,用于高效完成数据提取、转换和加载(ETL)任务。本文通过简单示例介绍 SSIS 的基本使用方法,包括创建数据包、配置数据源与目标以及自动化执行流程。首先确保安装了 SQL Server Data Tools (SSDT),然后在 Visual Studio 中创建新的 SSIS 项目,通过添加控制流和数据流组件,实现从 CSV 文件到 SQL Server 数据库的数据迁移。
388 0
|
5月前
|
SQL 数据库 数据库管理
SQL查询是否都需要解析:深入解析SQL执行流程与优化技巧
在数据库管理系统中,SQL(Structured Query Language)查询是用户与数据库交互的主要方式
|
6月前
|
SQL 数据处理 数据库
SQL SELECT语句的高级应用与技巧
SQL SELECT语句的高级应用与技巧
|
7月前
|
SQL 存储 Java
SQL数据库学习指南:从基础到高级
SQL数据库学习指南:从基础到高级
|
8月前
|
SQL Oracle 关系型数据库
整合Mybatis-Plus高级,Oracle 主键Sequence,Sql 注入器实现自定义全局操作
整合Mybatis-Plus高级,Oracle 主键Sequence,Sql 注入器实现自定义全局操作
163 0
|
7月前
|
SQL XML 数据库
后端数据库开发高级之通过在xml文件中映射实现动态SQL
后端数据库开发高级之通过在xml文件中映射实现动态SQL
70 3