문제
player 테이블에는 player_name, team_id, height 컬럼이 존재한다. 아래 SQL문에서 문법적 오류가 있는 부분은?
① (1) ② (2) ③ (3) ④ (4)
정답
4번
해설
정답: 4. BETWEEN 연산자는 BETWEEN 하한 AND 상한 형식으로 써야 하는데 (4)에서 BETWEEN 170 or 180처럼 or를 사용했으므로 문법 오류가 있는 부분은 (4)이다.
오답 풀이
- 1번: (1) SELECT player_name, height 절은 정상이다.
- 2번: (2) FROM player 절은 정상이다.
- 3번: (3) WHERE team_id = 'Korea' 조건은 정상이다.
- 4번: (4)
BETWEEN 170 or 180은 or 대신 AND를 써야 하므로 오류이다.
보충 개념 BETWEEN A AND B는 A 이상 B 이하 범위를 의미하며, 경계값을 포함한다.