php - 团队日程表的 MySQL 查询

标签 php mysql

我正在尝试根据下表检索每个团队的日程安排,但在显示团队名称时遇到了一些问题。这是我的表格:

团队 (team_id, 队名, 团队吉祥物, 等等)

游戏 (游戏编号, 游戏日期, game_home_team, game_visitor_team, game_home_score, game_visitor_score, 游戏完成)

这是我当前的查询。我可以用这个获得团队的 id 值,但我需要团队名称,因为 id 值对我没有多大用处。

SELECT game_home_team, game_visitor_team, game_date
FROM game 
INNER JOIN team home ON home.team_id = game_home_team 
INNER JOIN team visitor ON visitor.team_id = game_visitor_team
WHERE game_home_team = ? 
OR game_visitor_team = 6 
ORDER BY game_date ASC;

如何使用此查询检索球队名称,并根据比赛得分显示 W 或 L 等结果?非常感谢。

最佳答案

SELECT
   home.team_name AS home_team,
   visitor.team_name AS visitor_team,
   game_date,
   IF(
      game_home_score = game_visitor_score, 
      'Tie', 
      IF(
         game_home_score > game_visitor_score,
         'Hometeam',
         'Visitorteam'
      )
   ) AS Winner
FROM game 
INNER JOIN team home ON home.team_id = game_home_team 
INNER JOIN team visitor ON visitor.team_id = game_visitor_team
WHERE game_home_team = ? 
OR game_visitor_team = 6 
ORDER BY game_date ASC;

关于php - 团队日程表的 MySQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11528554/

相关文章:

PHP:阻止函数返回值?

javascript - 通过ajax存储数据然后访问该URL

PHP $_POST 多行数组

MySQL 内部连接 ​​- '=' 与 'like'

mysql - 无法添加或更新子行...为什么会出现此错误?

javascript - Highchart 饼图基础

java - 当从我的 Android 应用程序将数据保存到 mysql 时,它会删除空格

mysql - INSERT IGNORE 仍然自动递增,替代 SQL 查询?

MySQL 为每个 Relational_ID 选择不同的列,其中最大时间戳低于 X

mysql - 将sql查询转换为 Eloquent