gpt4 book ai didi

mysql - 平均优化sql结果集

转载 作者:搜寻专家 更新时间:2023-10-30 20:31:09 25 4
gpt4 key购买 nike

我有以下 SQL 行返回数据库中评级为 10 的所有同人画...目前它可以工作,但不像最初预期的那样...

我想要的是它返回同人图平均评分为 10 的结果...评分表中的每个同人图行都可以引用相同的 itemid,从而允许我们对每件作品进行多个用户评分艺术品...我希望它只返回不同的 itemid,其中所有评级的平均值为 10。

SELECT DISTINCT g.gametitle, 
p.name,
g.id,
b.filename
FROM games AS g,
banners AS b,
platforms AS p,
ratings AS r
WHERE r.itemid = b.id
AND r.rating = '10'
AND g.id = b.keyvalue
AND r.itemtype = 'banner'
AND b.keytype = 'fanart'
AND g.platform = p.id
ORDER BY Rand()
LIMIT 6;

希望比我聪明的人能解决这个问题!

我尝试创建一个使用 AVG() 函数的子查询,但没有成功。

期待一些发人深省的回复!

最佳答案

这需要聚合!

   SELECT g.gametitle, 
p.name,
g.id,
b.filename
FROM games AS g,
banners AS b,
platforms AS p,
ratings AS r
WHERE r.itemid = b.id
AND g.id = b.keyvalue
AND r.itemtype = 'banner'
AND b.keytype = 'fanart'
AND g.platform = p.id
GROUP BY g.gametitle,
p.name,
g.id,
b.filename
HAVING AVG(r.rating) = 10

关于mysql - 平均优化sql结果集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6795219/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com