mysql,for循环执行sql

遇到一个问题,我需要模拟上百万数据来优化sql,线上数据down不下来,测试库又没有,写代码执行要么慢要么就是sql语句太长。

于是,直接用mysql自带的功能去实现!

简单而简单

mysql可以for循环?没错!!可以的

在 MySQL 中,通常使用**存储过程(Stored Procedure)**来实现类似于 for 循环的功能。存储过程允许你在数据库中定义一组 SQL 语句,并可以通过调用存储过程来执行这些语句。

话不多说,开整!!!!

sql 复制代码
DELIMITER $$

CREATE PROCEDURE simple_loop()
BEGIN
    DECLARE i INT DEFAULT 1;
    DECLARE max_count INT DEFAULT 10;
    
    WHILE i <= max_count DO
        -- 在这里放置你想要循环执行的 SQL 语句
        INSERT INTO your_table (column1, column2) VALUES (i, 'some value');
        
        SET i = i + 1;
    END WHILE;
END$$

DELIMITER ;

simple_loop : 存储过程名称,可以自定义,记下来!!

DECLARE max_count INT DEFAULT 10; 就是循环的次数

i 和 max_count : 自定义,就是for循环

好了,定义好了,为啥我执行没反应呢?

莫慌,当前只是定义,我们需要调用,没错就是存储过程就是个method (函数)!

开始调用

sql 复制代码
CALL simple_loop();

没错,就是CALL 就行!!!

------ end

相关推荐
数据知道23 分钟前
MongoDB认证机制实战:详细讲述SCRAM-SHA与X.509证书认证配置
数据库·mongodb
雷工笔记37 分钟前
KingFusion 关系库查询核心:SQLQuery 与 AsynSQLQuery 函数全解析
数据库
zopple37 分钟前
Knife4j文档请求异常(基于SpringBoot3,查找原因并解决)
java·服务器·数据库
执笔为剑39 分钟前
docker环境升级数据库
数据库·docker·容器
sea12161 小时前
Flask配置MySQL连接信息的最佳实践
python·mysql·flask
数据知道1 小时前
MongoDB审计日志配置:详细讲述满足合规性要求的安全记录
数据库·安全·mongodb
難釋懷1 小时前
Redis搭建哨兵集群
数据库·redis·缓存
璞~1 小时前
安装达梦数据库
数据库
oioihoii1 小时前
数据库查询优化中的谓词下推策略与成本感知优化实践
服务器·数据库·oracle
Full Stack Developme1 小时前
MongoDB 应用场景
数据库·mongodb