Mysql_流程控制结构

【MySQL进阶之路 | 基础篇】流程控制 。 阅读详情

#流程控制结构

    顺序结构:程序从上往下依次执行

    分支结构:程序两条或多条路径选择一条去执行

    循环结构:程序在满足一定条件的基础上,重复执行一段代码

 

#一、分支结构

    #1.if函数

        功能:实现简单的双分支

        语法:

          if(表达式1,表达式2,表达式3)

          执行顺序:

          如果表达式1成立,则if函数返回表达式2的值,否则返回表达式3的值

          应用:任何地方

 

    #2.case结构

        情况1:类似于java中的switch语句,一般用于实现等值判断

        语法:

            CASE 变量|表达式|字段

            WHEN 要判断的值 THEN 返回的值1或语句1;

            WHEN 要判断的值 THEN 返回的值2或语句1;

            ... ...

            ELSE 要返回的值n或语句n;

            END CASE;

    

        情况2:类似与java中的多重if语句,一般用于实现区间判断

        语法:

            CASE

            WHEN 要判断的条件1 THEN 返回的值1或语句1;

            WHEN 要判断的条件2 THEN 返回的值2或语句1;

            ... ...

            ELSE 要返回的值n或语句n;

            END CASE;

    特点:

        一:可以作为表达式,嵌套在其它语句中使用,可以放在任何地方,begin end中 或begin end外边

               可以作为独立的语句去使用,只能放在begin end中

        二:如果when中的值满足或条件成立,则执行对应的then后面的语句,并且结束case

                如果都不满足,则执行else中的语句或值

        三:else可以省略,如果else省略了,并且所有when条件都不满足,则返回null

 

    #案例、创建存储过程,根据传入的成绩,来显示等级,比如传入的成绩:100-90显示A,90-80显示B,80-60显示C,否则,显示D

        DELIMITER $

        CREATE PROCEDURE level_score(IN score INT)

        BEGIN

            CASE

            WHEN score<100 AND score>90 THEN SELECT 'A';

            WHEN score>80 THEN SELECT 'B';

            WHEN score>60 THEN SELECT 'C';

            ELSE SELECT 'D';

            END CASE;

        END $

        CALL level_score(96)$

        

 

    #3.if结构

        功能:实现多重分支

        语法:

            if 条件1 then 语句1;

            elseif 条件2 then 语句2;

            ... ...

            else 语句n;

            end if;

        应用场合:只能应用在begin end中

 

    #案例1.根据传入的成绩,来显示等级,比如传入的成绩:100-90返回A,90-80返回B,80-60返回C,否则,返回D

        CREATE FUNCTION func_level(score INT) RETURNS CHAR

        BEGIN

            IF score>=90 AND score<=100 THEN RETURN 'A';

            ELSEIF score>=80 THEN RETURN 'B';

            ELSEIF score>=60 THEN RETURN 'C';

            ELSE RETURN 'D';

            END IF;

        END $

        SELECT func_level(63)$

        

 

 

#二、循环结构

        

        while、loop、repeat

            循环控制:

            iterate类似于 countinu,继续,结束本次循环,继续下一次

            leave 类似于 break,跳出,结束当前所在的循环

 

        #1.while

            语法:

            【标签:】while 循环条件 do

                    循环体;

                end while 【标签】;

 

             联想java中

             while(循环条件){

                 循环体;

             }

 

        #2.loop

            语法:

            【标签:】loop

                    循环体;

                end loop 【标签】;

            可以用来模拟简单的死循环

 

        #3.repeat  类似与java中的do...while

            语法:

            【标签:】repeat

                    循环体;

                until 结束循环的条件

                end repeat 【标签】;

 

    #1.没有添加循环控制语句

        #案例:批量插入,根据次数插入到admin表中多条记录

            DROP PROCEDURE pro_while1;

            DELIMITER $

            CREATE PROCEDURE pro_while1(IN insertCount INT)

            BEGIN

                DECLARE i INT DEFAULT 1;#定义局部变量 做循环条件

                WHILE i<insertCount DO  

                    INSERT INTO admin(username,`password`) VALUE(CONCAT('Rose',i),'7777');

                    SET i=i+1;  #i自增长

                END WHILE;

            END $

 

            CALL pro_while1(50)$

         

        查看调用的结果

        

 

    #2.添加leave语句

        #案例:批量插入,根据次数插入到admin表中多条记录,如果次数>20则停止

            TRUNCATE TABLE admin$ #清空admin的数据

            CREATE PROCEDURE leave_while(IN insertCount INT)

            BEGIN

                DECLARE i INT DEFAULT 1;

                a:WHILE i<=insertCount DO

                    INSERT INTO admin(username,`password`) VALUE(CONCAT('小花',i),'0000');

                    IF i>=20 THEN LEAVE a;  #当a大于20时 结束标签a 跳出循环

                    END IF;

                    SET i=i+1;

                END WHILE a;

            END $

            CALL leave_while(50)$

          

        当a大于20时停止本次循环

          

 

    #3.添加iterate语句

        #案例:批量插入,根据次数插入到admin表中多条记录,插入偶数次

            CREATE PROCEDURE iterate_pro(IN insertCount INT)

            BEGIN

                DECLARE i INT DEFAULT 0;

                a:WHILE i<=insertCount DO

                    SET i=i+1;

                    IF MOD(i,2)!=0 THEN ITERATE a;

                    END IF;

                    INSERT INTO admin(username,`password`) VALUE(CONCAT('li俊杰',i),'5555');

                END WHILE a;

            END $

 

            CALL iterate_pro(100)$

        

        

 

#流程控制经典案例

 

        一、已知表stringcontent

            其中字段:

            id 自增长

            content varchar(20)

            向该表插入指定个数的,插入指定个数 随机的字符串

#创建stringcontent表

        DROP TABLE IF EXISTS stringcontent;

        CREATE TABLE stringcontent(

            id INT PRIMARY KEY AUTO_INCREMENT,

            content VARCHAR(20)

        );

#rand()函数生成0到0.9999无限接近于1的数

#创建test_rand_str存储过程

        CREATE PROCEDURE test_rand_str(IN insertCount INT)

        BEGIN

            DECLARE i INT DEFAULT 1;#定义一个循环变量,表示插入次数

            DECLARE str VARCHAR(26) DEFAULT 'abcdefghijklmnopqrstuvwxyz';#定义要截取的字符串

            DECLARE startIndex INT DEFAULT 1;#代表起始索引

            DECLARE len INT DEFAULT 1;#字符截取的长度

            WHILE i<=insertCount

            DO

                SET startIndex=FLOOR(RAND()*26+1);#产生一个随机的整数,代表起始索引1到26

                SET len=FLOOR(RAND()*(26-startIndex+1));#产生一个随机的整数,代表 截取长度1到26-startIndex+1

                INSERT INTO stringcontent(content) VALUE(SUBSTR(str,startIndex,len));

                SET i=i+1;#循环迭代条件

            END WHILE;

        END $

        

#调用存储过程

        CALL test_rand_str(10)$

        SELECT *FROM stringcontent$

        

 

禾赛PandarXT-16/阿努比LpmsIG1运行lio-sam 课题是多传感器融合,将GNSS/INS/LIDAR做融合定位导航,故考虑使用lio-sam开源算法,在此记录一下我在适配传感器数据时遇到的一些问题; 阅读详情

相关推荐

FreeRTOS --(15)信号量之概述

FreeRTOS 中使用信号量来做同步,信号量可以在任务中使用作为任务与任务间的同步,也可以在中断中使用(带 FromISR 的版本)中断与任务间的同步; 针对不同的应用场景,信号量分为两种: 1、二值信号量; 2、计数信号量; 1、二值信号量 1.1、Usage 顾名思义,二值信号量只有两个值:0 和 1;它用于简单场景下的任务与任务、中断与任务之间的同步,比如:一个任务,在等待某个资源到位后,才能够继续执行,在得到这个资源之前,它处于阻塞状态,假如一个中断来了,给出了这个资源,那么.

StephenZhou 6519

mysql流程控制

注意:只能用于存储程序顺序结构:程序从上往下依次执行分支结构:程序按条件进行选择执行,从两条或多条路径中选择一条执行循环结构:程序满足一定条件下,重复执行一组语句MySQL 的流程控制语句主要有 3 类。条件判断语句:IF 语句和 CASE 语句循环语句:LOOP、WHILE 和 REPEAT 语句跳转语句:ITERATE 和 LEAVE 语句。

学习笔记,相关教程 分享 2902

Xilinx PCIe IP核示例工程仿真流程与关键任务解析

本文详细解析了Xilinx PCIe IP核示例工程的仿真流程与关键任务。通过搭建仿真环境、解读初始化日志,并深入剖析TSK_TX_MEMORY_WRITE_32等核心任务的TLP报文生成与交互过程,帮助开发者掌握PCIe IP核的仿真调试方法,为实际硬件设计提供可靠的验证基础。

weixin_28314575的博客 510

MySql-08-流程控制

注意:repeat循环相当于C语言中的do while循环,都是先执行一次循环体再进行条件判断,但是不同的是,do while循环是条件不满足时才结束循环,而repeat是条件满足时才结束循环。#以上所说的流程控制时相对于存储过程而言的,流程控制大多时用于配合存储过程的,因为自定义函数在数据库中使用比较少,大多数都是使用存储过程。数据库中的流程控制也就相当于C语言中的控制语句,其中又分为顺序结构,选择结构和循环结构三种。#注意:这里的loop循环是一个无限循环,其没有结束条件,所以要手动添加结束条件。

m0_74388920的博客 536

IC芯片验证 - 手把手教你搭建UVM验证环境

这是一个UVM的demo项目

howard789的博客 3万+

在Ubuntu22.04.2远程服务器上搭建OHIF+Orthanc

在Ubuntu远程服务器上不翻墙,但是本地windows需要科学上网开始之前,首先在终端输入export -p查看是否有代理端口如下如果有就关了,输入如下命令。

weixin_51116549的博客 1346

mysql流程控制结构

--------------------------------循环结构总结--------------------------------IF socre >= 90 AND socre <= 100 THEN SET result = 'A';#案例1:创建存储过程,实现传入成绩,如果成绩>90,返回A,如果成绩>80,返回B,如果成绩>60,返回C,否则返回D。#案例2:创建函数,实现传入成绩,如果成绩>90,返回A,如果成绩>80,返回B,如果成绩>60,返回C,否则返回D。

Zero的博客 663

如何使用MCP2518FD外部CAN FD控制器实现速速CAN通信

1、SPI时序MCP2518FD外部CAN FD控制器具有小尺寸和SPI接口,可实现轻松连接。可将CAN FD通道轻松添加到缺少CAN FD外设或没有所需CAN FD通道的微控制器上。MCP2518FD支持经典格式 (CAN 2.0B) 和CAN灵活数据速率 (CAN FD) 格式中的CAN帧格式,符合ISO11898-1:2015标准。框图:本文实验板MCU:CAN FD控制器:MCP2518FDCAN FD收发器:ATA6560开发环境:想了解开发板更详细信息,请点击。

qq_57798018的博客 1万+

MySQL--流程控制结构

功能:实现简单的双分支语法:if(表达式1,表达式2,表达式3)执行顺序:如果表达式1成立,则if函数返回表达式2的值,否则返回表达式3的值应用:任何地方情况1:类似于java中的switch语句,一般用于实现等值判断语法: CASE 变量|表达式|字段 WHERE 要判断的值 THEN 返回的值1或语句1; WHERE 要判断的值 THEN 返回的值2或语句2; ... ELSE 要返回的值n或语句n; END CASE;

weixin_61500949的博客 952

手把手教你用内核远程call实现64位进程注入(附完整ShellCode示例)

本文深入探讨了在Windows 64位环境下,通过内核态直接操作线程TrapFrame结构实现进程注入的高级技术。文章提供了从驱动框架设计、用户态-内核态通信,到定位修改TrapFrame、编写Shellcode及执行环境恢复的完整实战指南,并附有详细的代码示例,为安全研究人员和开发者提供了绕过用户态检测、实现底层远程代码执行的新思路。

weixin_28396629的博客 346

华为OD机试 - 压缩日志查询(Java 双机位C卷 100分)

如:上一行的数据显示范围是202411231540,202411231541542,下一行的数据是显示可以是 202411231544, 202411231547,中间202411231543的数据可能由于其他原因缺失。查询的时间范围为闭区间,即大于等于startTime且小于等于endTime,startTime <= endTime,且他们跨度的分钟数小于100;查询时,根据输入的时间范围进行查询,需要返回回时间范围内记录的每分钟的指标值,如果某个时间点没有记录值,则此条记录忽略不返回。

学Java,找哪吒 994

MySQL基础篇——流程控制结构

介绍MySQL中的流程控制结构

qq_43499848的博客 911

ADS基础教程22 - 有限元电磁仿真(FEM)

一、引言二、FEM操作过程1.新建Layout1.新建Layout2.EM设置3.设置Frequency plan4.设置Output plan5.设置Options6.设置网格频率7.仿真结果三、总结介绍了在ADS中如何进行FEM仿真过程。END!}}END!

XZ_ZC的博客 2584

MySQL之流程控制结构

MySQL之流程控制结构分类顺序结构分支结构1、if函数2、case结构3、if结构循环结构1、while2、loop3、repeat4、循环控制语句 如果你想了解更多关于MySQL的内容,可以查看:MySQL学习目录 分类 顺序结构:程序从上往下依次执行 分支结构:程序按条件进行选择执行,从两条或多条路径中选择一条执行 循环结构:程序满足一定条件下,重复执行一组语句 顺序结构 我们平时所作的增删...

仰望与追逐的博客 442

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

[MYSQL] 流程控制结构

一、流程控制结构大致分为 1、顺序结构 2、分支结构 3、循环控制结构 二、分支结构 特点: 1、if函数 功能:实现简单双分支 语法: if(条件,值1,值2) 位置: 可以作为表达式放在任何位置 2、case结构 功能:实现多分支 语法1: case 表达式或字段 when 值1 then 语句1; when 值2 then 语句2; .. else 语句n; end [case]; 语法2: case when 条件1 then 语句1; when 条件2 then 语句2; .. else

qq_51148692的博客 217

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

mysql——流程控制结构

流程控制结构 顺序结构:程序从上外下执行 分支结构:程序可以从两条或者多条去执行 循环结构:程序在男足一定的条件基础上重复执行一段代码 一、分支结构 1、IF函数 功能:实现简单的双分支语法: SELECT IF(表达式1,表达式2,表达式3);执行顺序:如果表达式1成立则返回表达式2的值,否则返回表达式3的值 应用在任何地方 2、CASE结构 (如果THEN后面加语句则需要用分号结...

小顽固的博客 317

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

MySQL流程控制结构

结合函数或存储过程,加入流程控制,让功能更加强大。

qq_43164662的博客 859

MySQL 基础 ———— 流程控制结构

引言 MySQL 中的流程控制作为基础知识的最后一块拼图,显得并不是特别重要,而且,在实际生产开发中,也往往不需要通过它来进行程序的控制,那么为什么还要学习它呢?我认为有以下几点: 1、知识的完整性:虽然MySQL 的流程控制结构并不重要,但是作为MySQL 基础知识的一部分,我认为有必要将它补充完善,最起码也要掌握其基本语法和结构,不至于到了真正用的时候临时抱佛脚。 2、任何知识都有其应用...

Morty的技术乐园 528

尚硅谷-MySQL流程控制结构

MySQL流程控制结构 顺序结构:程序从上到下依次执行 分支结构:程序可以从俩条或多条路径中选择一条执行 循环结构:程序在满足一定条件的基础上,重复执行一段代码 一、分支结构 1.IF函数 功能:实现简单的双分支 语法 SELECT IF(表达式1,表达式2,表达式3) 执行顺序: 如果表达式1成立,则if函数返回表达式2的值,否则返回表达式3的值 应用: 任何地方 2.case结构 情况1:类似于java中的switch语句,一般用于实现等值判断 语法: CASE 变量|表达式|字段 WHEN 要判断

qq_45959630的博客 997

系统整理Mysql学习笔记——流程控制结构

前言 流程控制结构是任何一个语言的一种基本具备的特性,有三种结构,分别是顺序结构、分支结构、循环结构,下面主要是对分支结构和循环结构进行了解。 一、分支结构 在MYSQL中分支结构可以看成有三种 ,分别是IF函数、CASE结构、IF结构 1 IF函数 IF函数,它首先是一个函数,所以它可以在函数所支持的位置使用,主要是针对简单的双分支结构。 语法: IF(表达式1,表达式2,表达式3) 如果表达式1为TRUE,则执行返回表达式2的值,否则返回表达式3的值。 例子: SELECT IF(TRUE,'我是TR

Burnup_110的博客 263

MySQL从入门到精通之流程控制结构

请先导入myemployees数据库 执行SQL脚本文件导入数据库 什么叫流程控制结构呢?说白了就是语句执行过程,比如while、for循环、if条件判断、switch-case选择判断等,可以说大部分的编程语言都有这些语句。在MySQL中同样也有,只是有一些语法差别。 一、分支结构 1、if函数 语法:if(条件,值1,值2) 功能:实现双分支 2、if结构 语法: if 条件1 then 语...

hestyle的博客 341

【mysql-流程控制结构】

文章目录1. 分支结构1.1 if 函数1.2 case 结构1.3 if 结构2. 循环结构2.1 while2.2 loop2.3 repeat 流程控制结构 顺序、分支、循环 1. 分支结构 1.1 if 函数 语法:if(条件,值1,值2) 功能:实现双分支 应用在begin end中或外面 1.2 case 结构 语法: 情况1:类似于switch case 变量或表达式 when 值1 then 语句1; when 值2 then 语句2; ... else 语句n; end 情况2: ca

JH灰色的博客 197

MySQL 存储过程——流程控制结构

MySQL 存储过程——流程控制 顺序结构:程序从上往下依次执行 分支结构:程序从两条或者多条路径中选择一条去执行 循环结构: 程序在满足一定条件的基础上,重复执行一段代码 一、分支结构 1.if函数 功能:实现简单的分支 语法: select iF(表达式1,表达式2,表达式3) 执行顺序: 如果表达式1成立,则if函数返回表达式2的值,否则返回表达式3的值 应用:任何地方 2.case结构 情况1:类似于java中的switch语句,一般用于实现等值判断 语法: CASE 变量|表达式|字段 WH

weixin_42074566的博客 898

MySQL复习day08:流程控制结构

流程控制结构流程控制结构分支结构循环结构 流程控制结构 1.顺序结构:程序从上至下依次执行; 2.分支结构:程序从两条或多条路径中选择一条取执行; 3.循环结构:程序满足一定条件的基础上,重复执行一段代码; 分支结构 1.if函数   实现简单的双分支   语法:   if(判别式,表达式1,表达式2) ,如果判别式成立,则执行表达式1,否则执行表达式2; 2. case结构 语法:   case 变量|表达式|字段   when 要判断的值 then 返回的值1;   when 要判断的值

MARSHCW的博客 2185
上一篇: Mysql_function函数介绍
下一篇: JUC_1-volatile 关键字 内存可见性
YanQiu_Only
博客等级 码龄10年 6粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值