php - 从另一个表中选择按唯一值分组的表中的所有行
问题描述
我有两个表的简单数据库。
在teams
表中有列team
和id
。表有
players
列player_name
、player_age
和。 position
team_id
team_id
in table 是在players
table 中引用的外键。team_name
teams
我想使用 PHP 在 HTML 表中显示此信息,其中我将使用team_name
,player_name
和player_age
.
我只需要唯一team_name
值,因为我想使用 while 循环回显整个表,所以我需要它们只在标题中回显一次。我希望这是有道理的。
我的问题是,我不知道如何编写一个查询,它将从表中返回不同的team_name
值,但从teams
表中返回所有玩家和年龄信息players
。
我尝试过使用连接,但我总是得到与值相同数量的team_name
值player_name
。
我这样做只是为了锻炼,所以我现在不关心任何安全问题和类似的事情。
解决方案
假设您想显示 id = 3 的团队的关系,您可以使用 join 作为
select t.team_name, p.player_name, p.player_age
from teams t
inner join players p on p.team_id = t.id
and t.id = 3
或者如果您想要基于团队名称的关系
select t.team_name, p.player_name, p.player_age
from teams t
inner join players p on p.team_id = t.id
and t.team_name = 'your_preferred_team_name'
如果您希望所有团队都在一个查询中,那么
select t.team_name, p.player_name, p.player_age
from teams t
inner join players p on p.team_id = t.id
Order by t.id
推荐阅读
- postgresql - pgbouncer.ini 和 postgresql.conf 的参数是否正确?
- haskell - 通常将元组的每个组件放入 Maybe
- python - 修复 Python 中的“AttributeError: type object has no attribute”
- api - 使用图像选择器插件将选择的图像上传到 Flutter 中的 API
- python - 如何在循环中一次打印特定的东西
- android - 我应该在我的片段/活动中还是在我的视图模型中编写这段代码?
- codeigniter - 我的 Codeigniter 3 应用程序中出现此错误图像上传错误消息的原因是什么?
- python - scipy.linalg.expm 与手动编码之间的区别
- php - php水平循环
- javascript - 在网站顶部放置一个 HTML 按钮?