直接 WHILE (select count(*) from ProWage)>2*(select count(*) from ProWage where Wage>=@PWage) do update end while
ELIMITER $$ DROP PROCEDURE IF EXISTS `Sum_wage`$$
CREATE DEFINER = `root`@`localhost` PROCEDURE `Sum_wage`(pwage INT,awage INT) BEGIN tt:WHILE 1=1 DO IF (SELECT COUNT(*) FROM ProWage)>2*(SELECT COUNT(*) FROM ProWage WHERE Wage>=@PWage) THEN UPDATE ProWage SET Wage=Wage+AWage; ELSE LEAVE tt; END IF; END WHILE;END$$ DELIMITER ;
WHILE (select count(*) from ProWage)>2*(select count(*) from ProWage where Wage>=@PWage)
do update
end while
DROP PROCEDURE IF EXISTS `Sum_wage`$$
CREATE DEFINER = `root`@`localhost` PROCEDURE `Sum_wage`(pwage INT,awage INT)
BEGIN
tt:WHILE 1=1 DO
IF (SELECT COUNT(*) FROM ProWage)>2*(SELECT COUNT(*) FROM ProWage WHERE Wage>=@PWage)
THEN UPDATE ProWage SET Wage=Wage+AWage;
ELSE
LEAVE tt;
END IF;
END WHILE;END$$
DELIMITER ;