【发布时间】:2015-09-23 14:38:50
【问题描述】:
请告知为什么 group by 在这里不起作用。 我希望它按 setup_time 分组:
mysql> select i_connection, avg(setup_time) from CDR_Vendors where i_env = 9 group by i_connection order by setup_time asc limit 15;
+--------------+-----------------+
| i_connection | avg(setup_time) |
+--------------+-----------------+
| 0 | 0.0000 |
| 351 | 0.0000 |
| 235 | 11.9830 |
| 376 | 77.3151 |
| 396 | 168.3036 |
| 318 | 99.0741 |
| 319 | 126.4138 |
| 317 | 366.6881 |
| 545 | 2523.9878 |
| 551 | 4811.5482 |
| 485 | 3410.2093 |
| 289 | 692.0000 |
| 239 | 4314.1667 |
| 510 | 3322.8444 |
| 546 | 2041.7491 |
+--------------+-----------------+
【问题讨论】:
-
您的问题对于您正在尝试做什么或问题是什么相当模糊。我强烈建议您阅读这些页面:stackoverflow.com/help/how-to-ask 和 stackoverflow.com/help/how-to-answer,它们都是在提问或回答问题时使用的绝佳资源,可以帮助您快速获得最佳答案。
-
我确定
group by工作正常(我使用它时它一直工作)。毕竟,每组只有一行,所以结果对我来说是正确的。你一定期待它做一些它不打算做的事情。 -
我认为,如果您重新表述您的问题(使其更清楚),您会得到更多帮助,“我希望它按 setup_time 分组”到底是什么意思?因为如果您 GROUP BY setup_time 并对其进行平均,也许我犯了一个错误,但我认为它只会返回 setup_time ...(平均每行具有相同的 setup_time)。