MySQL子查询需要帮助

时间:2010-01-22 09:59:35

标签: mysql

我是MYSQL的初学者请帮助我。

我有两张桌子和费率。

我希望out put是imgID Rate。

图像ID为图像表中的p.k.

图像是速率表中的foriegn键。

费率表样本数据

ImgID   Rating
1       5
1       7
1       8
2       8
3       2
4       3
1       4

图像表样本数据

ImgID Comment rate
1     good    7
2     bad     8
3     ok      8
4     fine    8
5     bad     7

out put i required is is

ImgId avg(比率img id时的费率表费率)

例如

ImgIf rate
-----------
1       6
2       8
3       2
4       3

我需要此输出的子查询。

提前致谢

1 个答案:

答案 0 :(得分:4)

您不需要子查询,需要聚合。

SELECT  ImgID,
        AVG(Rate) Rate
FROM    RateTable
GROUP BY ImgID

如果您想要包含所有图像,无论是否有评级:

SELECT  i.ImgID,
        AVG(r.Rate) Rate
FROM    ImageTable i
        LEFT JOIN
                RateTable r
                ON i.ImgID = r.ImgID
GROUP BY i.ImgID