【问题标题】:Creating Soccerleagueranking with Codeigniter & Mysql使用 Codeigniter 和 Mysql 创建足球联赛排名
【发布时间】:2011-07-15 22:21:25
【问题描述】:

我已经在该站点上搜索过类似的帖子,但我只找到了一个开发人员尝试使用大量 SQL 查询进行计算(赢-输-画)的帖子。我想在我的控制器中进行计算,但不知道从哪里开始。

我有 2 个表格,如下所示:

团队

teamID     teamName

游戏

gameID     matchday     homeTeamID     awayTeamID    homeScore     awayScore

现在我正试图根据这场比赛的结果得出联赛排名,但我需要一些关于如何看待这个的见解......

目前,我有一个查询,它选择所有比赛结果并将正确的球队 ID 分配给主队或客队,如下所示:

"SELECT g.gameID, g.matchday, g.homeTeamID, g.awayTeamID, g.homeScore, g.awayScore, th.teamName as homeTeam, ta.teamName as awayTeam,
FROM games AS g
INNER JOIN teams as th ON g.homeTeamID = th.teamID
INNER JOIN teams as ta ON g.awayTeamID = ta.teamID
JOIN submenu_teams AS s ON g.submenuID = s.submenuID"

任何人都可以尝试解释从这里到哪里可以根据他们在赛季中赢得的积分获得球队的不错排名吗?

谢谢!

【问题讨论】:

    标签: php sql codeigniter ranking


    【解决方案1】:

    我建议跟踪表中的点数(第 1 季),这样每次请求页面时,您不必再次计算排名:您只需从表中获取。

    每次进行新比赛时,运行一个脚本,将 X 点添加到获胜者并从失败者中减去 Y 点。

    要显示,获取结果并按分数排序。

    你已经完成了!

    (您阅读的关于排名和 SQL 的帖子是我的帖子吗?)

    【讨论】:

    • 不,是this 一个。哪一个是你的?所以基本上你的想法是创建一个新表(一个真正的排名)并且每次管理员添加一些游戏时,一个脚本运行并将点插入数据库?这当然是一种可能的解决方案,甚至一开始都没有想到:)。谢谢@Cystack
    • 是的,如果您的管理员使用 Web 界面添加条目,则在添加每个新结果后,您会立即使用 2 个新值加载排名表(如果是足球,那么它是 +3/0我猜是 0/+3 或 +1/+1)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-13
    • 2021-09-22
    相关资源
    最近更新 更多