mysql 批量更新(插入)表字段 清洗数据 存储过程

CREATE DEFINER=`root`@`%` PROCEDURE `u_goods_support`()
BEGIN
declare i int;
set i = 0;
while i <= 100000 DO
UPDATE u_goods_support ugs
INNER JOIN goods_new_old gno ON ugs.prod_id = gno.old_code
INNER JOIN goods_classification gc ON gc.code = gno.classify
SET ugs.prod_id = gno.code, ugs.product_type = CASE WHEN gc.classification_ascription = '类' THEN 1 ELSE 2 END
WHERE ugs.id>=i AND ugs.id < i+1000;
commit;
set i = i+1000;
end while;
end
// 循环插入数据
DROP PROCEDURE
IF
	EXISTS test_insert;

DELIMITER;;
CREATE PROCEDURE test_insert ( ) BEGIN
DECLARE
		i INT DEFAULT 1;
	WHILE
			i < 1000000 DO
			INSERT INTO `shop` (`openid`) VALUES ('on6uJ5aWyG2rhkl4itbIYFNWo1BU');
			SET i = i + 1;
			END WHILE;
			COMMIT;
		END;;
CALL test_insert ();

posted on   何苦->  阅读(97)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示