多个MySQL选择
我有一个查询,但我想从另一个表向其添加另一个字段 这就是我现在使用的:多个MySQL选择,mysql,sql,select,join,Mysql,Sql,Select,Join,我有一个查询,但我想从另一个表向其添加另一个字段 这就是我现在使用的: SELECT * FROM tournaments t , tournament_participants t1 WHERE t.tournament_id = t1.tournament_id ORDER BY t1.tournament_id, t1.team_id; 这可以很好地工作,但是我还希望使用团队id作为查询的一部分从团队表中获取团队名称 我不知道怎么做,有人能帮忙吗?只需使用连接: SELECT *
SELECT *
FROM tournaments t , tournament_participants t1
WHERE t.tournament_id = t1.tournament_id
ORDER BY t1.tournament_id, t1.team_id;
这可以很好地工作,但是我还希望使用团队id作为查询的一部分从团队表中获取团队名称
我不知道怎么做,有人能帮忙吗?只需使用连接:
SELECT * FROM tournaments AS t
LEFT JOIN tournament_partecipants AS tp ON t.tournament_id = tp.tournament_id
LEFT JOIN team ON tp.team_id = team.team_id
ORDER BY tp.tournament_id, tp.team_id
试试这个:
SELECT t.*, t1.*, t2.name
FROM tournaments t
INNER JOIN tournament_participants t1 ON t.tournament_id = t1.tournament_id
INNER JOIN teams t2 ON t1.team_id = t2.team_id
ORDER BY t1.tournament_id, t1.team_id;
我不知道您有什么样的表模式。下面的查询基于很多假设。所以我可能对你真正需要的东西错了。请看一看 查询:
select p.pid, p.pname, t.id as teamID
from participants p
left join tournament tt
on p.ttnid = tt.tnid
inner join team t
on tt.tnid = t.ttid
结果:
PID PNAME TEAMID
1 john 10
2 tim 10
3 alex 20
4 ron 20
5 kate 30
参考:
如果您需要任何不同的解决方案或进一步的澄清,请告知我们:谢谢您的建议。。最后一个给了我想要的,其余的都给了,但是有更多的数据…最后一个给了我想要的,谢谢。。。其他的都有,但这只给了我想要的数据。。非常感谢您的帮助,我想我现在必须学习连接:再次感谢所有发表评论的人。这实际上取决于表的结构方式。看看你的问题,你会怎么想在你的问题中使用了什么样的引用完整性是否应该假设参与者表有一个外键引用taeam表?最好提供表模式和至少一些示例数据。