문제
다음 BETWEEN 조건과 결과가 다른 조건으로 가장 적절한 것은?
SQLWHERE COL1 BETWEEN DATE '2024-01-01' AND DATE '2024-01-31'
① WHERE COL1 >= DATE '2024-01-01' AND COL1 <= DATE '2024-01-31' ② WHERE DATE '2024-01-01' <= COL1 AND COL1 <= DATE '2024-01-31' ③ WHERE COL1 > DATE '2024-01-01' AND COL1 < DATE '2024-01-31' ④ WHERE COL1 BETWEEN DATE '2024-01-01' AND DATE '2024-01-31'
정답
3번
해설
정답: 3. BETWEEN은 양 끝값을 포함하므로 초과와 미만을 사용하는 3번은 결과가 다르다.
오답 풀이
- 1번: BETWEEN과 같은 포함 범위 조건이다.
- 2번: BETWEEN과 같은 의미이다.
- 3번: 시작값과 종료값을 제외하므로 결과가 다르다.
- 4번: 원문과 동일하다.
보충 개념 BETWEEN A AND B는 A 이상 B 이하를 의미한다. 날짜 컬럼에 시간이 포함되어 있다면 종료일 처리에 주의해야 한다.