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

MySQL——存储2(造数据)和 if 结构

(接上一篇)
三、存储造数据

循环:while ..条件... do ...执行语句..end while (讲这个循环)
loop ...... end loop
repeat ....until .....end repeat
声明变量: declare 变量名 字符类型 default 数字

(1)造数据1:

select * from ss1 ;

drop table ss1;
CREATE table ss1(id int(10),name VARCHAR(20));

delimiter //
drop procedure if EXISTS cc1;
CREATE procedure cc1()
BEGIN
DECLARE i int DEFAULT 0; #声明i 默认0123456789
while (i<10) DO
INSERT into ss1(id) VALUES (i) ;
set i=i+1;
end while;
select * from ss1;
END
//
call cc1()
image

案例2: 控制造数据的数量

select * from ss1 ;
drop table ss1;
CREATE table ss1(id int(10),name VARCHAR(20));
delimiter //
drop procedure if EXISTS cc1;
CREATE procedure cc1(in x int(10))
BEGIN
DECLARE i int DEFAULT 0; #声明i 默认0123456789
while (i<x) DO
INSERT into ss1(id) VALUES (i) ;
set i=i+1;
end while;
select * from ss1;
END
//
call cc1(40)
image

案例3:优化
根据你已经存在的数据(count统计),进行造数据
select * from ss1 ;
drop table ss1;
CREATE table ss1(id int(10),name VARCHAR(20));
delimiter //
drop procedure if EXISTS cc1;
CREATE procedure cc1(in x int(10))
BEGIN
DECLARE i int DEFAULT (select count(*) from ss1); #声明i 默认0123456789
while (i<x) DO
INSERT into ss1(id) VALUES (i) ;
set i=i+1;
end while;
select * from ss1;
END
//
call cc1(15)
image

案例4:优化
新建表,重新插入数据

delimiter // #分割符号
drop procedure if EXISTS cc1; #判断并删除存储
CREATE procedure cc1(in x int(10)) #创建存储
BEGIN #开始
DECLARE i int DEFAULT 0; #声明i 默认0123456789
drop table if EXISTS ss1; #判断并删除表
CREATE table ss1(id int(10),name VARCHAR(20)); #创建表
while (i<x) DO
INSERT into ss1(id) VALUES (i) ; #插入数据
set i=i+1; #每次+1
end while; #结束
select * from ss1; #查看表
END
//
call cc1(6)
image

四、if语句
备注一个if 对应一个end if
(1)if 单分支
格式:
if 条件 then
slq语句1
else
sql语句2
end if;
如:
delimiter // #分割符号
drop procedure if EXISTS cc1; #判断并删除存储
CREATE procedure cc1(in x int(10)) #创建存储
BEGIN #开始
if x>10 THEN
select * from emp ;
ELSE
select * from dept ;
END if;
end
//

call cc1(11)
image

(2)if多分支
格式:
if 条件1 THEN
sql1
ELSE if 条件2 then
sql2
ELSE if 条件3 THEN
sql3
else if 条件4 THEN
sql4
else
sql5
END if;
end if;
end IF;
END if;

如:
delimiter // #分割符号
drop procedure if EXISTS cc1; #判断并删除存储
CREATE procedure cc1(in x int(10)) #创建存储
BEGIN #开始
if x=0 THEN
select * from emp ;
ELSE if x=10 then
select * from dept ;
ELSE if x=100 THEN
select * from sc;
else if x=1000 THEN
select * from student;
else
select * from b1;
END if;
end if;
end IF;
END if;
end
//

call cc1(71)

image

作业:根据emp表去写
1.当传入的参数(大于0)小于等于表里面数据的条数时,则根据每个部门显示所有的工资
2.当传入的参数大于表里面数据的条数时,则统计表里面的数据有多少条
3.当传入其他,则查询表里面的所有数据

五、
1、你会存储?
2、存储结构?
3、工作中的存储做什么? 造数据
4、你会写吗?讲下怎么造数据背下

http://www.jsqmd.com/news/293277/

相关文章:

  • 『NAS』在绿联部署一个像素风宝可梦同人游戏-pokerogue
  • 『n8n』数据过滤
  • 高精度尘埃粒子计数器优质品牌有哪些?杭州丰控了解一下
  • 2026年宁夏银川核心商圈广告资源推荐,靠谱的高清广告屏排名揭晓!
  • 2026年重庆专业建筑结构加固施工单位推荐,为您的建筑安全护航
  • 2026年纯手工砖生产厂排名,选哪家好给你做推荐
  • 盘点临沂济宁等地美容美妆培训学校推荐,别错过好校
  • 2026年广州精品意大利进口岩板品牌,三星岩(TRE STELLE)值得关注
  • 实用指南:Arbess从基础到高阶(6) - 使用Arbess+GitLab实现Python项目自动化构建并主机部署
  • 实用指南:LLM - Agent Skills 智能体新范式
  • 新书《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》出版啦
  • 高中物理梳理(不定期更新)
  • 探讨成都万通未来高级技工学校的云计算专业好不好
  • See_you_soon の 个人主页
  • Java七种常用设计模式_java设计模式,零基础入门到精通,收藏这篇就够了
  • effective java-类和接口_effective java 类,零基础入门到精通,收藏这篇就够了
  • 如何验证模型加载成功?DeepSeek-R1日志分析技巧
  • 开发者入门必看:集成Qwen儿童图像生成功能的API调用指南
  • SGLang电商推荐系统实战:结构化输出部署全流程
  • 从理论到落地:分层记忆架构在AI Agent中的应用实践
  • 收藏必备!揭秘AI智能体记忆系统:让大模型从“健忘“到“有记忆“的进化之路
  • 为什么RAG能解决AI幻觉?技术原理深度剖析
  • JWT令牌伪造的自动化检测流水线设计‌—— 构建持续化的安全测试防御体系
  • MITRE ATTCK框架驱动的自动化攻击模拟:软件测试实战指南
  • 长云科技光缆牵引机,光缆敷设施工好帮手!
  • 电缆输送机使用年限
  • 详解kubectl get replicaset命令及与kubectl get pods的核心区别
  • 盘点2025年江苏十大高口碑拖车服务商,做得好的拖车平台费用多少行业优质排行榜亮相
  • 深度学习笔记
  • 2025年广东服务大品牌的广告4A公司排行,服务知名品牌的广告公司口碑推荐精选实力品牌