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

相关推荐
福赖3 分钟前
《微服务即使通讯中redis的作用》
数据库·redis·缓存
自己的九又四分之三站台10 分钟前
向量数据库PGVector实操
数据库
sa1002711 分钟前
walmart沃尔玛关键词商品搜索实现逻辑
数据库·python
handsome123424 分钟前
Navicat 查数据 乱码 解决 的经历
数据库·mysql·oracle
AllData公司负责人29 分钟前
【亲测好用】数仓建模平台能力演示
大数据·数据库·算法
上海合宙LuatOS1 小时前
LuatOS框架的使用(2)
java·服务器·开发语言·前端·数据库·嵌入式硬件·php
一起养小猫1 小时前
Flutter for OpenHarmony 实战 文件存储与数据库操作完全指南
开发语言·jvm·数据库·spring·flutter·harmonyos
2301_765703141 小时前
深入理解Python的if __name__ == ‘__main__‘
jvm·数据库·python
tellmewhoisi1 小时前
面试题mysql 2000万数据怎么建表
mysql
浒畔居1 小时前
使用Docker容器化你的Python应用
jvm·数据库·python