关于SQL 存储过程入门基础(流程控制)

这里我们讲一下存储过程的流程控制, if else,case ,while,这里没有for循环的 ,这些跟c,c++,c#等语言都差不过的。

一,首先来看if  else使用


代码如下:

if 条件
begin
sql 语句
end
else begin
sql语句
end

看个简单例子


代码如下:

declare @id int           --声明个变量
set @id=5                 --设置厨初始值
if(@id=1)
    begin
        print 'right'
    end
else if(@id=0)
    begin
        print 'error'
    end
else
    begin
         print 'default'
    end

结果我想大家都该晓得了,就不写出来了,这里的begin ,end 也可以不写,不过建议写,这个像c++代码的{},表示一块,写出来层次更加清晰。

当然if 嵌套也是可以的。  

二,While的使用

我们来计算下1到100的求和运算

代码如下:

Declare @i int,@sum int
set @i=0
set @sum=0
while @i<=100   --开始循环
begin
set @i=@i+1  --自增一
set @sum=@sum+@i
end
print @sum
结果
-----------

三,Case 多重选择的使用

代码如下:

Declare @iret int,@var varchar(10)
set @var='A'
select @iret=
case when @var='A' then 0
 when @var='B' then 1
 when @var='C' then 2
 when @var='D' then 3
 else -1
 print @iret

结果
-------

上面的这些基本流程控制,基本能满足我们日常的开发需求了,暂时想到的就这么多了,哪天想起其他情况,会适当补充。

(0)

相关推荐

  • 关于SQL 存储过程入门基础(流程控制)

    这里我们讲一下存储过程的流程控制, if else,case ,while,这里没有for循环的 ,这些跟c,c++,c#等语言都差不过的. 一,首先来看if  else使用 复制代码 代码如下: if 条件beginsql 语句endelse beginsql语句end 看个简单例子 复制代码 代码如下: declare @id int           --声明个变量set @id=5                 --设置厨初始值if(@id=1)    begin        pr

  • 关于SQL 存储过程入门基础(变量)

    上一篇我们讲到了SQL存储过程的基本定义,怎么创建,使用,这篇就来讲一下变量的使用. 变量分文局部变量和全局变量 局部变量是@开头,全局变量是@@开头,这里我们主要讲局部变量,全局变量我们后面再讲. 在c# 语言中,定义一个变量很简单,例如 复制代码 代码如下: int i=0; --定义加赋值. 在sql中,定义一个变量需要关键字DECLARE,还需要个特殊符号标记(@)表示是变量. 看看简单的声明语法: 复制代码 代码如下: Declare @Local_Var data_type @Loc

  • 关于SQL 存储过程入门基础(基础知识)

    大学里面对存储过程没有讲到什么,工作了一段时间,对存储过程还是没有用到,根本不需要去写存储过程,可能是做的软件方向的原因吧.为了以后发展,决定从零开始学习下. 这里看看存储过程的定义, 存储过程(Stored Procedure),是一组为了完成特定功能的SQL 语句,集经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数,如果该存储过程带有参数来执行. 在SQL Server 的系列版本中,存储过程分为两类:系统提供的存储过程和用户自定义存储过程. 系统SP,主要存储master 数据

  • Oracle PL/SQL语言入门基础

    正在看的ORACLE教程是:Oracle PL/SQL语言入门基础.PL/SQL是ORACLE对标准数据库语言的扩展,ORACLE公司已经将PL/SQL整合到ORACLE 服务器和其他工具中了,近几年中更多的开发人员和DBA开始使用PL/SQL,本文将讲述PL/SQL基础语法,结构和组件.以及如何设计并执行一个PL/SQL程序. PL/SQL的优点 从版本6开始PL/SQL就被可靠的整合到ORACLE中了,一旦掌握PL/SQL的优点以及其独有的数据管理的便利性,那么你很难想象ORACLE缺了PL

  • 浅析Python基础-流程控制

    Python编程语言的作用非常强大,而且其应用方便的特点也对开发人员起到了非常大的作用.在这里我们就可以先从Python流程控制关键字的相关概念开始了解,从而初步掌握这一语言的特点. Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年. 像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议. 哪门语言都会有流程控制

  • Lua基础教程之赋值语句、表达式、流程控制、函数学习笔记

    赋值语句 注释,单行用(--)来表示:多行用(--[[ ... ]])来标示: 定义,lua中没有定义(申明数据类型),它是通过赋值来确定其数据类型的. 赋值,是改变一个变量的值和改变表域的最基本的方法. a = "hello" .. "world" Lua可以对多个变量同时赋值,变量列表和值列表的各个元素用逗号分开,赋值语句右边的值会依次赋给左边的变量.a, b = 10, 2*x <--> a=10; b=2*x 遇到赋值语句Lua会先计算右边所有的

  • MySQL存储过程之流程控制while,repeat,loop循环

    目录 前言 while循环 repeat循环 loop循环 前言 循环是一段在程序中只出现一次,但可能会连续运行多次的代码. 循环中的代码会运行特定的次数,或者是运行到特定条件成立时结束循环. 循环分类: while repeat loop 循环控制: leave 类似于 break,跳出,结束当前所在的循环 iterate类似于 continue,继续,结束本次循环,继续下一次 while循环 [标签:]while 循环条件 do 循环体; end while[ 标签]; -- 创建测试表 c

  • PHP基础学习之流程控制的实现分析

    PHP 有三大流程控制:顺序控制,分支控制,循环控制. 1.顺序控制:就是程序按顺序从上往下一步一步的执行. 2.分支控制:程序有选择的执行.又分单分支,多分支,多重分支. a.单分支:基本语法结构: if(条件表达式){ 语句; //.....; } 提示:条件表达式不管有多复杂,最终就是true或者false; eg: a=11; if(a>10){ echo "a>10"; } b.多分支:基本语法: if(条件表达式){ 语句; //.....; }else{ 语句

  • Javascript基础:运算符与流程控制详解

    目录 1. 运算符(操作符) 1.1 算数运算符 1.2 递增和递减运算符 1.3 比较运算符 1.4 逻辑运算符 1.5 赋值运算符 1.6 运算符优先级 2. 流程控制 2.1 if 的语法结构 2.2 if else双分支语句 2.3 if else if语句(多选1) 2.4 三元表达式 2.5 switch分支流程控制 总结 1. 运算符(操作符) 「运算符」是用于实现赋值.比较和执行算数运算等功能的符号.常用运算符分类如下 算数运算符 递增和递减运算符 比较运算符 逻辑运算符 赋值运

  • Java Mybatis框架入门基础教程

    一.Mybatis介绍 MyBatis是一款一流的支持自定义SQL.存储过程和高级映射的持久化框架.MyBatis几乎消除了所有的JDBC代码,也基本不需要手工去 设置参数和获取检索结果.MyBatis能够使用简单的XML格式或者注解进行来配置,能够映射基本数据元素.Map接口和POJOs(普通java对象)到数据库中的记录. 二.MyBatis工作流程 (1)加载配置并初始化 触发条件:加载配置文件 配置来源于两个地方,一处是配置文件,一处是Java代码的注解,将SQL的配置信息加载成为一个个

随机推荐