相关疑难解决方法(0)

MySQL - 选择不在Group By中的列

我正在尝试向预先存在的应用程序添加功能,我遇到了类似这样的MySQL视图:

SELECT
     AVG(table_name.col1),
     AVG(table_name.col2),
     AVG(table_name.col3),
     table_name.personID,
     table_name.col4
FROM table_name
GROUP BY table_name.personID;
Run Code Online (Sandbox Code Playgroud)

好的,所以有一些聚合函数.您可以选择personID,因为您正在对其进行分组.但它也是选择一个不在聚合函数中的列,而不是GROUP BY子句的一部分.这怎么可能???它只是选择一个随机值,因为每个组的值绝对不是唯一的吗?

我来自哪里(MSSQL Server),这是一个错误.有人可以向我解释这种行为以及为什么它在MySQL中被允许?

mysql group-by

48
推荐指数
2
解决办法
3万
查看次数

标签 统计

group-by ×1

mysql ×1