인프런 커뮤니티 질문&답변

김해인님의 프로필 이미지
김해인

작성한 질문수

[백문이불여일타] 데이터 분석을 위한 중급 SQL

JOIN 에서 AND 와 WHERE의 차이

해결된 질문

작성

·

148

2

안녕하세요, 해커랭크 African Cities 를 풀다가 아래와 같은 질문이 생겼습니다.

African Cities
SELECT city.name
FROM city
             INNER JOIN country ON city.countrycode = country.code
             AND country.continent = 'africa'
마지막 줄에 WHERE 대신 AND를 썼을 때도 정답이 되었는데, WHERE와 어떤 차이가 있나요?
머리 속으로 그려봤을 때 해당 문제의 경우는 AND를 써도 무방한 것 같은데,
바람직한(?) 방법은 배운대로 WHERE을 쓰는 게 맞을까요?

답변 2

1

윤선미님의 프로필 이미지
윤선미
지식공유자

수업 시간에 설명드린 것처럼, INNER JOIN에서는 필터링 조건을 어디에 걸어줘도 결과는 같게 나옵니다.

LEFT JOIN, RIGHT JOIN 처럼 OUTER JOIN 사용하실 때에는 WHERE 절 조건이 JOIN 이후 결과물에 적용된다는 것을 주의하면서 조건 작성 하셔야 합니다.

0

김해인님의 프로필 이미지
김해인
질문자

이해가 쏙쏙 되었습니다!! 이후 다른 문제를 풀 때도 여기서 이해한 내용이 상당히 도움이 되었습니다. 감사합니다 :)

김해인님의 프로필 이미지
김해인

작성한 질문수

질문하기