您的位置:首页 > 博客中心 > 数据库 >

mysql 存储过程 删除重复

时间:2022-03-10 18:19

DELIMITER $$

CREATE PROCEDURE `delRepeatCA`()

BEGIN

DECLARE tally INT DEFAULT 0;

SELECT COUNT(rs.c_CA) INTO tally FROM          --------赋值
(SELECT COUNT(c_CA) AS c_CA FROM t_CA
GROUP BY c_CA HAVING COUNT(1) > 1) rs

WHILE tally>0 DO      --------循环

IF(tally>0)THEN
                ------------删除重复
DELETE t_CAAS a FROM t_CAAS a, (
SELECT MIN(c_id)AS c_id FROM t_CA GROUP BY c_CA HAVING COUNT(1) > 1)AS b
WHERE a.c_id = b.c_id;

SELECT COUNT(rs.c_CA) INTO tally FROM
(SELECT COUNT(c_CA) AS c_CA FROM t_CA
GROUP BY c_CA HAVING COUNT(1) > 1) rs


END IF;

END WHILE;

END$$

DELIMITER ;

mysql 存储过程 删除重复,布布扣,bubuko.com

热门排行

今日推荐

热门手游