欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MYSQL 存储过程实现LOOP嵌套循环

程序员文章站 2022-05-07 19:07:55
文中有两种循环嵌套的写法,均可实现,已实际操作,可用!!需求说明:统计数据库全部表字段内数据不为空的量。统计结果如图:不为空的数据量为0,说明此字段数据都为null;写法一:如图说明:1.通过mysql系统表,循环查找对应库内全部的表名,作为外层循环。将查找的表名赋给变量v_table_name;2.通过外层循环获取的表名v_table_name,以表名为条件,查找对应表的字段;3.逐个字段计算,数据不为空的数量,并将计算结果赋给变量v_column_cnt;(统计不为空的数据量使用动态sq...

文中有两种循环嵌套的写法,均可实现,已实际操作,可用!!
需求说明:统计数据库全部表字段内数据不为空的量。
统计结果如图:不为空的数据量为0,说明此字段数据都为null;
MYSQL 存储过程实现LOOP嵌套循环

写法一:如图

MYSQL 存储过程实现LOOP嵌套循环
说明:
1.通过mysql系统表,循环查找对应库内全部的表名,作为外层循环。将查找的表名赋给变量v_table_name;
2.通过外层循环获取的表名v_table_name,以表名为条件,查找对应表的字段;
3.逐个字段计算,数据不为空的数量,并将计算结果赋给变量v_column_cnt;(统计不为空的数据量使用动态sql的形式,拼接成sql语句并执行,直接用变量是行不通的,mysql不支持。)
4.最后将统计数据插入到目标表;
5.内层循环是查找某一张表内全部字段,并计算字段数量;外层循环是逐一查找表。

写法二:如图
MYSQL 存储过程实现LOOP嵌套循环
说明:
跟写法一逻辑差不多,写法上没有分内外层循环,不同之处已用红框框上了。

本文地址:https://blog.csdn.net/kingloong123/article/details/107320010