查找数字在两列中显示的总次数

时间:2012-11-13 20:52:52

标签: php mysql

我有一个MySQL数据库,我在其中添加电视上显示的足球游戏。每个团队都代表一个数字。我无法弄清楚我如何能够查询一个团队在电视上播放的次数,无论他们是在家还是在外面玩。

我正试图在电视上播放前20名的球队名单。我拥有团队ID的两列名为“hjemmehold”和“udehold”(这是丹麦语:))。

任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:0)

SELECT SUM(Away)+SUM(Home) AS NumGames
FROM Games
WHERE Team=@Team

显然这是伪代码,但是把正确的表/字段/参数放进去,你应该好好去。

对于所有20支球队:

SELECT TOP 20 Team, SUM(Away)+SUM(Home) AS NumGames
FROM Games
ORDER BY SUM(Away)+SUM(Home) desc

答案 1 :(得分:0)

t。这应该能够为你提供前20名参赛队伍。这也可以让你找到哪些球队还没有参加比赛(如果你删除了前20名)。

SELECT TOP 20
    team_id, 
    (SELECT COUNT(1) FROM GAMES WHERE HOME = t.team_id) + (SELECT COUNT(1) FROM GAMES WHERE AWAY = team_id) AS team_count
FROM TEAMS T 
ORDER BY team_count DESC

答案 2 :(得分:0)

SELECT Team, Count(*)
FROM (select Away as Team from Games union all select Home as Team from Games) t
GROUP BY Team
ORDER BY Count(*) Desc
LIMIT 20