我正在尝试查询它转到一个表的位置获取一个值,在本例中是它的 TeamCode
然后获取它并在另一个表中找到 TeamCode
名为 HomeTeam
和 AwayTeam
的表列,并返回俱乐部表中的 Team
列。
SELECT Team
FROM club
WHERE TeamCode IN (SELECT DISTINCT
HomeTeam and Awayteam FROM matches);
出于某种原因,这段代码在本应超过 20 个时只返回一个条目。
最佳答案
这真的有用吗?试试这个:
SELECT Team
FROM club
WHERE TeamCode IN (SELECT DISTINCT HomeTeam FROM Matches
UNION
SELECT DISTINCT AwayTeam FROM Matches);
或存在:
SELECT t.team
FROM club t
WHERE EXISTS(select 1 from Matches s
where s.awayTeam = t.team
or s.HomeTeam = t.Team)
或者使用内部连接:
SELECT t.team
FROM club t
INNER JOIN Matches s
ON(s.awayTeam = t.team
or s.HomeTeam = t.Team)
关于mysql - 如何从一个表中获取出现在另一个表中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36113671/