2013-10-20 2 views
0

나는 2 개의 테이블이 있습니다. 하나는 경기 (날짜, 장소, 결과, 상대방 등)를 표시하고 다른 하나는 타격 이닝 (경기 기록 등)의 세부 사항을 표시합니다. 두 테이블 모두 타격을 특정 게임과 관련시키는 기본 키를 가지고 있습니다.sqlite 함께 조인

MAX (최고) 점수가 BATTING 테이블에 기록 될 때 OPPONENT 열을 게임에서 반환하려고하지만 현재이 작업을 수행하는 방법이 확실하지 않습니다.

2 개 개의 테이블

는 (최대 점수 RUNSSCORED에서 101 것이이 테이블에서 여기

http://i.imgur.com/bqiyD3X.png

예 발견, 그래서

"펀 데일"입니다 GAMEINDEX에서 링크 된 상대를 반환 할 수있다

어떤 도움도 좋은 것입니다. 감사합니다.

답변

1

이 당신이?

select OPPONENT 
from GAMES 
where GAMESINDEX in 
    (select GAMESINDEX from BATTING order by RUNSSCORED desc limit 1); 
찾고있는 무엇인가

고유 한 최대 RUNSSCORED 값이 없으면 응답이 결정적이지 않을 수 있습니다. 당신이이 경우에 다수의 수상자를 원하는 경우

, 당신은 문제가되지 않습니다이 경우

select OPPONENT 
from GAMES natural join BATTING 
WHERE RUNSSCORED in (select MAX(RUNSSCORED) from BATTING); 
+0

를 사용할 수 있습니다. 아프다 그것을 시도하고 내가 뭘 찾을 수 있는지보십시오. 감사합니다 –

+0

아, 좋아. 늦게 회신을 보았습니다. 여러 승자 케이스에 대한 쿼리도 추가했습니다. – Fabian

0
SELECT G.OPPONENT, MAX(B.RUNSSCORED) 
FROM GAMES AS G 
    INNER JOIN BATTING AS B 
    ON G.GAMESINDEX = B.GAMESINDEX 
관련 문제