当前位置: 首页 > news >正文

昆明靠谱的网站开发公司有哪些中国十大知名网站

昆明靠谱的网站开发公司有哪些,中国十大知名网站,成都医院网站建设,邳州网站文章目录 概念循环语句while 循环语句repeat 循环语句loop 循环语句iterate 和 leave 语句 精选示例总结参考资料 概念 循环结构是编程中常见的控制结构,它允许我们重复执行一段代码,直到满足特定条件为止。 在 Mysql 中,常用来实现各种复杂…

文章目录

    • 概念
    • 循环语句
      • while 循环语句
      • repeat 循环语句
      • loop 循环语句
      • iterate 和 leave 语句
    • 精选示例
    • 总结
    • 参考资料

概念

循环结构是编程中常见的控制结构,它允许我们重复执行一段代码,直到满足特定条件为止。

在 Mysql 中,常用来实现各种复杂的逻辑操作和对满足条件的数据进行批量操作,提高数据处理的效率和灵活性,例如批量处理数据、生成序列号和数据动态透视等。

循环语句

while 循环语句

while 循环语句是 MySQL 中最基本的循环语句,它创建一个带条件判断的循环过程。while 在执行语句执行时,先对指定的表达式进行判断,如果为真,就执行循环内的语句,否则退出循环。

[while_label:] while 循环条件  do循环体end while [while_label];

while_label 为语句的标注名称,可以省略;循环体里面一般会写终止条件,否则无限死循环。

示例

drop procedure if exists update_salary_while;
create procedure update_salary_while(out num int)
begin# 声明变量和赋值declare avg_sal double ; -- 记录平均工资declare while_count int default 0; -- 记录循环次数select avg(salary) into avg_sal from employees; -- 赋值while avg_sal > 5000 doupdate employees set salary = salary * 0.9 ;set while_count = while_count + 1;select avg(salary) into avg_sal from employees;end while;set num = while_count;-- 给num赋值
end;call update_salary_while(@num); -- 调用
select @num;
select avg(salary) from employees;

repeat 循环语句

repeat 循环首先会执行一次循环,然后在 until 中进行表达式的判断,如果满足条件就退出,即 end repeat ;如果条件不满足,则会就继续执行循环,直到满足退出条件为止。

[repeat_label:] repeat循环体的语句until 结束循环的条件表达式end repeat [repeat_label];

repeat_label 为 repeat 语句的标注名称,该参数可以省略;repeat 语句内的语句或语句群被重复,直至 结束循环的条件表达式 为真。

示例

drop procedure if exists update_salary_repeat;
create procedure update_salary_repeat(out num int)
begin#声明变量declare avg_sal double ; -- 记录平均工资declare repeat_count int default 0; -- 记录循环次数select avg(salary) into avg_sal from employees;repeatupdate employees set salary = salary * 1.15;set repeat_count = repeat_count + 1;select avg(salary) into avg_sal from employees;until avg_sal >= 13000end repeat;set num = repeat_count;-- 给num赋值		
end;
call update_salary_repeat(@num);
select @num;
select avg(salary) from employees;

loop 循环语句

loop 循环语句用来重复执行某些语句。循环执行的语句一直重复执行直到循环被退出(使用 leave 子句),跳出循环过程。

[loop_label:] loop循环执行的语句end loop [loop_label];

loop_label 为 loop 的标注名称,可以省略;常常和 iterate 、 leave 语句配合使用。

示例

drop procedure if exists update_salary_repeat;
create procedure update_salary_loop(out num int)
begin#声明变量declare avg_sal double ; #记录员工的平均工资declare loop_count int default 0;#记录循环的次数select avg(salary) into avg_sal from employees;-- 初始化条件,获取员工的平均工资loop_lab:loop# 结束循环的条件if avg_sal >= 12000then leave loop_lab;end if;# 循环体:如果低于12000,更新员工的工资update employees set salary = salary * 1.1;# 迭代条件select avg(salary) into avg_sal from employees;-- 更新avg_sal变量的值set loop_count = loop_count + 1;-- 记录循环次数end loop loop_lab;set num = loop_count;-- 给num赋值
end;
call update_salary_loop(@num);
select @num;

iterate 和 leave 语句

iterate 语句表示重新开始循环,将执行顺序转到语句段开头处,可以理解为 Python 中的 continue 。

leave 语句表示跳出循环或者跳出程序体的操作,类似于 Python 中的 break 。

示例

drop procedure iterate_leave_test;
create procedure iterate_leave_test()
begindeclare num int default 0;loop_label:loop#赋值set num = num + 1;if num  < 10then iterate loop_label;-- 满足则跳出循环,重新开始循环elseif num > 15then leave loop_label;-- 满足则跳出并结束循环end if;insert into sql_test1.test(id, name, sale) values (num,'test',1);end loop;
end;
call iterate_leave_test(); -- 调用

精选示例

随机生成批量指定长度的密码。

drop procedure if exists generate_pwd;
create procedure generate_pwd(in len int, in cnt int)
begindeclare chars_str varchar(100) default 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789';declare return_str varchar(255) default '';truncate table sql_test1.pwd;set @j = 1;while @j <= cnt doset @i = 1;set @return_str = '';while @i <= len doset @return_str = concat(@return_str, substring(chars_str, floor(1 + rand() * 62), 1));set @i = @i + 1;end while;insert into sql_test1.pwd(id, pwd) values (@j, @return_str);set @j = @j + 1;end while;select * from sql_test1.pwd;
end;
call generate_pwd(30,10);
+------+--------------------------------+
| id   | pwd                            |
+------+--------------------------------+
|    1 | u5obsl9zdejker8zoppsfovz1xastz |
|    2 | hwcns3u97zqyr9ho0s85u8orelh3ze |
|    3 | 7uuxsmziu6rsbgmopwy9hr1ng5gtta |
|    4 | lnmnmvjto43vgnwrbszjjverot1vl3 |
|    5 | 2s7nslhysgxkyr8dviwllemnurhjrr |
|    6 | nfif1xzoaexojyjbflbo3habkipknr |
|    7 | xhoyvrzlteieculu9pzazf9osi2s5d |
|    8 | mrmajvvbkfeyzuqcab0jpwke6pawju |
|    9 | b2t4ncwab3ysqcc7zknox6h2vlnnqb |
|   10 | bzzow8gr4dmpgiqlri8l9yb5ibz8pb |
+------+--------------------------------+

使用了 while 嵌套,定义了两个输入参数,分别是秘密长度和生成的数量,我们只要确定这两个参数就可以得到想要的批量密码。随机生成批量密码有多种方法,如果想了解更多,可以查看 Mysql 生成批量随机密码 和 Mysql 自定义函数

总结

通过本文,我们了解了MySQL中的循环语句及其用法。使用循环或者嵌套循环能帮助我们处理各种复杂的数据操作和逻辑处理,当遇到需要重复执行的 sql 语句都可以写成循环,让程序自动跑,防止手动修改参数意外出错。

参考资料

  • MySQL官方文档
  • MySQL Tutorial Loop
  • Mysql 生成批量随机密码
  • Mysql 自定义函数
  • Mysql 存储过程
http://www.rdtb.cn/news/22096.html

相关文章:

  • 徐东做网站seo流量排行榜神器
  • 珠江摩尔网站建设百度贴吧人工客服
  • 网站更换空间需要怎么做跟我学seo
  • 用pycharm做网站全球网站流量查询
  • 网站搜索栏怎么做网站备案查询工信部官网
  • 如何查询网站建站时间百度关键词工具在哪里
  • 建设项目公示对网站有什么要求系统优化软件十大排名
  • 本地网站构建北京、广州最新发布
  • 青岛城乡建设局网站首页推荐就业的培训机构
  • 网站视频主持免费网站建设平台
  • 淄川政府网站建设托管刷移动关键词优化
  • 网站建设方案策划书ppt一个具体网站的seo优化方案
  • 楼市最新消息价格合肥正规的seo公司
  • 网络推广SEO优化网站建设seo好学吗入门怎么学
  • 文科女学java 做网站网络服务器搭建
  • 网站策划主要工作是什么网站怎么做出来的
  • wordpress设置ssl网站打不开新网站百度seo如何做
  • 做网站需要什么系统sem优化软件哪家好
  • 在哪个网站里下载的图片可以做展架武汉网站排名推广
  • 在那个网站做义工好seo上海培训
  • php论坛网站源码下载谷歌搜索官网
  • SEO网站价格seo的中文含义
  • 秦皇岛网站制作价格运营推广计划怎么写
  • 金融网站模板源代码seo辅助优化工具
  • 高校里做网站的工作好搜搜索
  • 内容网站设计范例郑州网站seo优化公司
  • 哪个网站可以做纸箱北京网站seo公司
  • 哪里可以找到制作网站的公司百度seo点击
  • wordpress ifeature小红书搜索优化
  • php带数据库的网站百度外推排名代做