Data Science & ML

SQL Joins 및 고급 쿼리

INNER JOIN, LEFT/RIGHT JOIN, CROSS JOIN, CTE, window functions, 중첩 쿼리, 최적화

22 면접 질문·
Mid-Level
1

두 테이블 모두에서 일치하는 행만 반환하는 JOIN 유형은 무엇입니까?

답변

INNER JOIN은 두 테이블 모두에서 일치하는 행만 반환합니다. 왼쪽 테이블의 행이 오른쪽 테이블에서 일치하지 않으면(또는 그 반대인 경우), 결과에서 제외됩니다. 이는 가장 제한적이며 관련 데이터를 결합하는 데 가장 일반적으로 사용되는 JOIN 유형입니다.

2

오른쪽 테이블에 일치하는 항목이 없을 때 LEFT JOIN의 결과는 무엇입니까?

답변

LEFT JOIN은 오른쪽 테이블에 일치하는 항목이 없더라도 왼쪽 테이블의 모든 행을 유지합니다. 이 경우 오른쪽 테이블의 열은 NULL 값으로 채워집니다. 이를 통해 메인 테이블 데이터의 무결성을 보존하면서 선택적 정보를 추가할 수 있습니다.

3

JOIN을 사용하여 주문하지 않은 고객을 어떻게 찾을 수 있습니까?

답변

일치하지 않는 레코드를 찾으려면 LEFT JOIN 다음에 오른쪽 테이블의 열에 대한 WHERE 필터 IS NULL을 사용합니다. 이 기법은 주문 테이블을 여러 번 스캔하지 않기 때문에 NOT IN 서브쿼리보다 성능이 우수합니다. 이는 고아 데이터를 감지하기 위한 고전적인 패턴입니다.

4

CROSS JOIN은 결과로 무엇을 생성합니까?

5

SELF JOIN이란 무엇이며 언제 사용합니까?

+19 면접 질문

다음 면접을 위해 Data Science & ML을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기