DELIMITER $$
CREATE PROCEDURE `delRepeatCA`()
BEGINDECLARE 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 ;