문제
다음 SQL 실행 결과로 가장 적절한 것은?
<조건> emp 테이블과 sal 테이블을 id 기준으로 조인하고, incentive가 500 이상인 행만 조회한다. 조건을 만족하는 행은 이순신 1건이며 incentive 값은 1000이다.
SQLSELECT name, incentive FROM emp, sal WHERE emp.id = sal.id AND incentive >= 500;
① 이순신 | 1000 ② 이순신 | 500 ③ 강감찬 | 1000 ④ 결과 없음
정답
1번
해설
정답: 1. id가 일치하고 incentive가 500 이상인 행이 이순신 1건이며 값은 1000이다.
오답 풀이
- 1번: 조인 조건과 필터 조건을 모두 만족하는 결과이다.
- 2번: incentive 값을 잘못 제시했다.
- 3번: 조건을 만족하는 이름이 다르다.
- 4번: 조건을 만족하는 행이 존재한다.
보충 개념 구식 조인 문법에서는 FROM 절에 테이블을 나열하고 WHERE 절에 조인 조건과 필터 조건을 함께 작성한다. 컬럼명이 여러 테이블에 동시에 존재할 수 있으면 테이블 별칭을 붙여 명확히 작성하는 것이 좋다.