mysql - WITH ROLLUP 和 DISTINCT 的错误使用

标签 mysql database rollup

我尝试将 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

关于mysql - WITH ROLLUP 和 DISTINCT 的错误使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39424837/

相关文章:

php - 使用 mysql 和 php 将动态创建的 div 数据发送到 html 模式

java - 为什么在我的java代码中出现异常后回滚操作没有完成

php - 从给定数组中 id 的数据库中选择

java - 从 jdev 连接到 sql 文件

c# - 没有主键的 NHibernate 字典映射

java - 来自 trunc() 编辑字段的 JOOQ orderBy()

database - 如何从 png 图像创建 TFRecords 文件

javascript - 为什么我在尝试将 Rollup 与 commonjs 结合使用时得到 "Uncaught ReferenceError: exports is not defined"?

angular - 汇总 - 命名空间冲突

MySQL 只获取整体 ROLLUP