如何在mysql数据库中使用这个聚合函数

时间:2014-03-19 09:30:54

标签: mysql sql

如何使用mysql数据库计算聚合函数。以下查询返回无效使用组函数。

select avg(max(qty)) from tb_name.

3 个答案:

答案 0 :(得分:2)

你的陈述中没有任何小组,如果你只是这样阅读,你应该理解为什么它没有产生明智的结果:

您说Give me the average of the maximum value for qty from tb_name,但由于您没有按任何方式进行分组,因此只有一个最大值。

如果您在一个查询中需要这两个值,则可以这样做,但是您需要对查询进行分组,例如:

select avg(qty), max(qty) from tb_name group by SomethingOtherThanQty

根据您的评论,我猜您确实在寻找某个组的所有平均值的最大值,因为带子查询的查询可能如下所示:

SELECT MAX(AVERAGE) FROM
    (SELECT
            AVG(qty) AS AVERAGE
        FROM tb_name
        GROUP BY YourGroupingCriteria) AS SubQuery

答案 1 :(得分:1)

您可以执行以下操作:

SELECT AVG(qty) FROM tb_name

这将为您提供数量的平均值

OR

SELECT MAX(qty) FROM tb_name

这将为您提供最大的量值

在同一个表上同时使用AVG和MAX在逻辑上和语法上都不正确。

答案 2 :(得分:0)

试试这个

SELECT AVG(SELECT MAX(qty) FROM tb_name) FROM tb_name