MySQL Error number: 3028; Symbol: ER_AGGREGATE_ORDER_FOR_UNION; SQLSTATE: HY000 报错 故障修复 远程处理
文档解释
Error number: 3028; Symbol: ER_AGGREGATE_ORDER_FOR_UNION; SQLSTATE: HY000
Message: Expression #%u of ORDER BY contains aggregate function and applies to a UNION, EXCEPT or INTERSECT
ER_AGGREGATE_ORDER_FOR_UNION:MySQL错误号3028,其中出现“ ER_AGGREGATE_ORDER_FOR_UNION”,表明在使用UNION时出现了排序聚合,报错中提示无法在UNION查询中包含排序聚集,无法实现。
常见案例
解决方法:可以在第一个查询的SELECT子句中添加一个聚合函数,如SUM(),AVG(),MAX()等,以便于使UNION查询的每个部分的字段数量一致。此外,您还可以将ORDER BY与GROUP BY从子查询中删除,并将它们放在UNION查询的最后一部分,也可以解决此问题。