【发布时间】:2014-11-08 06:17:44
【问题描述】:
以下查询的行为似乎不正确。对于单个字段的 group by 和该字段的平均值,不同的 avg 可能应该为每个不同的平均值返回一行。例如,如果 avg 被 count 替换,查询将返回两行,如果 distinct 被删除或替换为 all,则查询返回三行。
CREATE TABLE x (x real);
INSERT INTO x VALUES (1), (2), (3), (3);
SELECT DISTINCT AVG(x) FROM x GROUP BY x;
MySQL 返回:
+--------+
| AVG(x) |
+--------+
| 1 |
+--------+
PostGres 返回:
AVG
-----
1
2
3
【问题讨论】:
-
你究竟需要什么O/P相同的原因或解决方案
-
我正在针对 mysql 测试我的 rdbms,这个查询破坏了我的随机查询生成器。
-
这意味着你想要像 postgress 这样的输出,我是对的