gpt4 book ai didi

mysql - SQL select : summ all ratings for setups from users. 一张表中的多个设置(包括 SQL FIDDLE)

转载 作者:行者123 更新时间:2023-11-29 18:19:56 25 4
gpt4 key购买 nike

我正在尝试运行 sql select,但每次尝试时,我都会意识到我绝对不适合这样做。

我的设置如下。

我有两张 table 。一种用于游戏玩家,例如存储姓名,另一种用于用户(用户表不重要)可以为游戏玩家的设置(设置表也不重要)投票。

因此,在评分表中存储了哪个用户投票给了哪个玩家设置(均带有 ID)、用户给出了多少分以及他对哪个设置进行了评分,因为玩家可以有多个设置。

我已经为你创建了一个 SQL Fiddle HERE .

现在我正在尝试获取所有设置的列表(注意不同的设置),按评级排序(这里很重要,SUM() 除以投票支持此设置的用户数量)描述

我尝试过类似的方法,但当然行不通。SELECT sum(gsr.gsr_ rating), gsr.gsr_setup_id FROM gamersetupratings gsr JOIN gamer as g ON g.gamer_id=gsr.gsr_lated_id WHERE gsr_lated_id = (SELECT gamer_id FROM gamer)

我和我的 friend 失败得很厉害,也许你们更有技巧。

感谢您的宝贵时间,我很感激。

最佳答案

在 yoru SQLFIDDLE 中,子选择出现错误如果您需要更多行来匹配,您可以使用 in 子句(或联接)

SELECT sum(gsr.gsr_rating)
, gsr.gsr_setup_id
FROM gamersetupratings gsr
JOIN gamer as g ON g.gamer_id=gsr.gsr_rated_id
WHERE gsr_rated_id in (SELECT gamer_id FROM gamer)

否则,如果您需要单行进行子选择,则可以使用限制 1

SELECT sum(gsr.gsr_rating)
, gsr.gsr_setup_id
FROM gamersetupratings gsr
JOIN gamer as g ON g.gamer_id=gsr.gsr_rated_id
WHERE gsr_rated_id = (SELECT gamer_id FROM gamer order by gamer_id limit 1)

但是你不需要子选择,你已经有了连接条件所需的值

SELECT sum(gsr.gsr_rating)
, gsr.gsr_setup_id
FROM gamersetupratings gsr
JOIN gamer as g ON g.gamer_id=gsr.gsr_rated_id

关于mysql - SQL select : summ all ratings for setups from users. 一张表中的多个设置(包括 SQL FIDDLE),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46672056/

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