나는 2002 년에 500,000 $ 이상의 급여를 받고, 30 홈런보다 을 더 많이 만든 플레이어를 인쇄하려고합니다. 두 테이블에서 데이터를 가져와야하지만 내가 가지고있는 것은 작동하지 않고 오류가 발생합니다. 나는 실수를 알아낼 것 같지 않은데, 왜 내가 필요한 결과를 내고 있지는 않는지. 오류 메신저가 점점SQL Query가 올바른 응답을 제공하지 않는 이유를 Cant가 이해하는 것 같습니다.
SELECT batter.playerID, HR, salary_table.salary, salary_table.yearID
FROM batter, salary_table
JOIN salary_table ON salary_table.playerID = batter.playerID
JOIN salary_table ON salary_table.yearID = batter.yearID
WHERE salary_table.yearID = 2002
AND salary_table.salary > 500000
AND HR > 30
GROUP BY batter.playerID, HR, salary_table.salary, salary_table.yearID;
는 AILED =입니다 : SemanticException [오류 10008] : 행 5 : 5 모호한 테이블 별칭 'salary_table'
당신은'salary_table'과 함께 여러 개의 조인이 있습니다. 모호성을 제거하기 위해 다른 별칭을 줄 필요가 있습니다. 또한 명시 적'JOIN'과 교차 제품을 섞어서는 안됩니다. – Barmar
@Barmar 그래서 batter.playerID 뒤에 쉼표를 넣고 salary_table.yearID까지 제거하면이 문제가 해결됩니까? 이 작업을 수행하면 ParseException 오류 줄 5:82이 '=' 'batter' '근처의 입력을 인식 할 수 없습니다.' 테이블 소스 –