0

在 Ms Access 中,我正在尝试编写一个 SQL 查询来回答以下问题:在至少一名球队成员受伤的足球运动员列表中返回所有球队的所有球员 ID。

我是 SQL 新手。我试过类似的东西

SELECT pid FROM players WHERE team_id IN 
           (SELECT team_id FROM players WHERE injury = 'yes') 

Access 不接受此 IN。有没有一种简单的方法可以做到这一点?我宁愿这样作为一个查询运行,而不是创建单独的查询,所以我可以根据需要轻松更改它。

4

1 回答 1

1

我很难相信它不支持IN,但是您可以使用连接来做到这一点:

SELECT distinct players.pid
FROM players as injured
INNER JOIN players on players.team_id = injured.team_id
WHERE injured.injury = 'yes'

我用distinct在一个球队有多名受伤球员的情况下,这会导致该球队的球员被多次归还

于 2012-11-24T18:11:07.783 回答