多个连接和聚合函数

时间:2014-03-10 06:29:40

标签: mysql database join aggregate-functions

我最近将几个数据库表合并为一个,并做了更好的数据库设计。我即将调整所有基于旧表所需的sql脚本。我的新数据库方案如下所示:enter image description here

  • 所以基本上我每个玩家都有一张桌子(fcs_spieler)。
  • 我有一个每个团队的桌子(fcs_teams)
  • 并且我记录哪个队员在哪个队伍中进行比赛(fcs_spieler2team)。
  • 也可能是一名球员在同一年参加两支不同的球队。
  • 现在我有一张桌子fcs_sponsorenlauf。人们可以赌一个球员。

我现在想要获得最多赌注的前15名球员。我已经尝试了2天,现在一起工作sql,没有运气。问题在于,总和是应该是什么的双倍金额,还是玩家在列表中显示甚至没有单一赌注的金额。此外,我不知道如何管理一名球员在同一年参加2支球队的情况。我的SQL下面有什么问题?任何建议,想法?感谢

select s.spid, s.vorname,s.name,t.bezeichnung,sum(sp.betrag) as sum
from fcs_sponsorenlauf sp
join fcs_spieler s on (sp.2spieler = s.spid)
join fcs_spieler2team s2t on ( sp.2spieler = s2t.spieler and sp.year = s2t.year)
join fcs_teams t on (t.id = s2t.team)
where sp.betrag_art = 'fix'
AND sp.validated = 1
and sp.year = '2013'
group by s.spid
order by sum DESC
limit 15;

0 个答案:

没有答案