2
올림픽 데이터베이스가 있으므로 기본 레이아웃에는 competitornum, givenname 및 familyname이있는 경쟁 업체 테이블이 있습니다 (다른 열은이 경우 필요하지 않음) competitornum 및 place가있는 결과 테이블도 있습니다. (1에서 8 사이).SQL의 하위 쿼리
나는 givenName과 및 familyname과 금,은 총 수, 동메달 얻으려고 (장소 = 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
'r.place이 시도 – hjpotter92
@GiantofaLannister 그래서 'IN (1,2,3)'와'0 4' BETWEEN 사이의 diffrerence은 무엇? –
OP가 범위를 변경하고 싶습니까? – hjpotter92