문제
다음 두 테이블을 이용한 조건식 중 결과가 다른 것은?
<데이터>
| TAB1.COL1 | TAB2.COL1 |
|---|---|
| A | A |
| B | B |
| C | NULL |
<조건> 두 컬럼을 비교하여 같은 값을 찾거나 다른 값을 찾는 조건식이다.
① WHERE T1.COL1 <> T2.COL1 ② WHERE NOT (T1.COL1 = T2.COL1) ③ WHERE T1.COL1 != T2.COL1 ④ WHERE T1.COL1 = T2.COL1
정답
4번
해설
정답: 4. 1, 2, 3번은 서로 다름을 비교하는 조건이고, 4번은 같음을 비교하는 조건이므로 결과가 다르다.
오답 풀이
- 1번: 두 값이 다른 경우를 찾는 조건이다.
- 2번: 같지 않음을 표현하는 조건이다.
- 3번: <>와 유사하게 같지 않음을 비교한다.
- 4번: 같은 값을 찾으므로 나머지와 결과가 다르다.
보충 개념 SQL에서 NULL이 비교에 포함되면 결과는 UNKNOWN이 될 수 있다. 같음과 다름 비교에서는 NULL 처리 여부에 주의해야 한다.