所以我有一个Olympic 数据库,基本布局是有一个包含competitornum、givenname 和familyname 的竞争者表(其他列不是必需的)还有一个包含竞争者数字和位置(1 到8 之间)的结果表。
我正在尝试获取名字和姓氏以及金牌、银牌和铜牌的总数(位置 = 1、2 或 3)
这是我到目前为止所得到的:
SELECT c.Givenname, c.Familyname, places AS TotalPlaces
FROM Competitors c,
(SELECT COUNT(*) as places
FROM Results r, Competitors c
WHERE r.Competitornum = c.Competitornum
AND r.Place > 0
AND r.Place < 4) q
然而,它返回每个人的名字,以及相同的总位置(恰好是 78)。例如
John Smith 78
Cassandra Jane 78
Bob Turner 78