使用WHERE子句中的AVG从联接的MySQL表中检索数据?

问题描述

| 我试图从使用WHERE子句中的AVG的多个表中选择数据。
SELECT company_metrics.*,companies.company_name,companies.permalink 
FROM company_metrics LEFT JOIN companies 
     ON companies.company_id = company_metrics.company_id
WHERE MONTH(date) = \'04\' AND YEAR(date) = \'2011\' 
HAVING (SELECT avg(company_unique_visitors) 
        FROM (SELECT company_metrics.company_unique_visitors 
              FROM company_metrics  
              ORDER BY company_metrics.date DESC LIMIT 3)
        average ) >\'2000\' 
ORDER BY date DESC
示例数据:
###Company Metrics#### Table
company_id       company_unique_visitors       date
-----------      -----------------------       ----
     604                    2054               2011-04-01
     604                    3444               2011-03-01
     604                    2122               2011-02-01
     604                    2144               2011-01-01
     604                    2001               2010-12-01
     602                    2011               2011-04-01
     602                    11                 2011-03-01
     602                    411                2011-02-01
     602                    611                2011-01-01
     602                    111                2010-12-01
编辑 我只想从company_unique_visitors AVG \'ed获得的3个最新数字 /编辑 因此该查询将选择company_id 604,但不会选择company_id 602,因为602的AVG不会大于2000。 我需要帮助编写正确的查询以按照我的描述进行操作。我可以澄清是否需要。 谢谢你的帮助!     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)