不正确地使用WITH ROLLUP和DISTINCT



我尝试导入sql文件到MySql数据库,但我遇到了一个问题:

ERROR 1221 (HY000) at line 4598: Incorrect usage of WITH ROLLUP and DISTINCT
DROP PROCEDURE IF EXISTS `sp_employees_rollup`$$
CREATE PROCEDURE `sp_employees_rollup` ()
BEGIN
SELECT Distinct City ,Sum(Salary) Salary_By_City FROM employees
GROUP BY City WITH ROLLUP;
END $$
DELIMITER ;

您不需要在GROUP BY查询中使用DISTINCT City,因为结果集中的每个记录已经是不同的。请使用以下查询:

SELECT City,
       SUM(Salary) Salary_By_City
FROM employees
GROUP BY City WITH ROLLUP

最新更新