mySQL AVG - 一种为AVG合并两个结果的方法

时间:2011-04-01 14:36:18

标签: php mysql average

我正在尝试获取指标上的平均互动次数,但是这个查询获得了DID互动者的平均互动次数(只有在他们之间进行了互动时,其中的metricsID仍然存在于{ {1}}表)。

所以,我想知道如何获得所有这些用户的平均值。我可以做两个查询,但那么我将如何平均两个结果?是否可以合并?

metrics

1 个答案:

答案 0 :(得分:2)

你应该反过来使用LEFT JOIN

SELECT  AVG(`instances`)
FROM    (
        SELECT  m.`metricID`, COUNT(mc.`metricAction`) as `instances`
        FROM   `metrics` m
        LEFT JOIN
                `metricActions` mc
        ON      mc.`metricID` = m.`metricID`
                AND mc.`type` = '2'
        WHERE   m.`clientID` = '10412'
        GROUP BY
                m.`metricID`
        ) as `temp`