php - 我想用不同的值显示同一列两次 mysql

标签 php mysql

从团队中选择 *;

| team_name | team_id | 
| India     |       1 | 
| England   |       2 | 
| Germany   |       3 |
| Japan     |       4 |

从匹配中选择 *;

| match_id | match_date | hometeam | awayteam | homescore | awayscore |
|        1 | 2014-06-24 |        1 |        2 |         3 |         0 |
|        2 | 2014-06-25 |        3 |        4 |         0 |         2 |

Matches-table hometeamawayteam 是 Teams-table team_id 的外键


我想要一个显示 homescoreawayscore 以及 team_names

的选择

最佳答案

你必须像这样将 matches 表与 teams 表连接起来:

SELECT th.team_name as team_home, m.homescore, ta.team_name as team_away, m.awayscore
FROM matches m 
INNER JOIN teams th ON m.hometeam = th.team_id
INNER JOIN teams ta ON m.awayteam = ta.team_id

这里是 SqlFiddle

关于php - 我想用不同的值显示同一列两次 mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20967762/

相关文章:

mysql - 显示完整表格通过错误

php - PHP 5.2 中的命名空间

php - 单击时将复选框值存储在数据库中

php - 我正在尝试循环,但我不能

运行 CentOS7 的 Virtualmin 上的 php ldap 扩展

mysql - 数据库中按条件重复记录并更改单个值

php - Laravel 5.1 中上传文件的安全性

php - LIMIT 使用偏移误差

mysql - 为通用对象实现数据库结构

mysql - SQL从两个表中获取结果