다음 SQL의 결과로 출력되는 글번호를 모두 나열한 것은?[게시글]글번… | [SQLD] SQL 개발자 기출유형 모의고사 3회 상세 페이지
1[SQLD] SQL 개발자 기출유형 모의고사 3회
다음 SQL의 결과로 출력되는 글번호를 모두 나열한 것은?[게시글]
| 글번호 | 분류 | 조회수 |
|---|---|---|
| 101 | 공지 | 50 |
| 102 | 질문 | 120 |
| 103 | (null) | 30 |
| 104 | 질문 | (null) |
| 105 | 자유 | 80 |
| 106 | (null) | 150 |
| 107 | 자유 | 100 |
SELECT 글번호 FROM 게시글 WHERE NOT (분류 = '공지' OR 조회수 > 100) ORDER BY 글번호;
1
103, 105, 107
2
105, 107
3
105
4
104, 105, 107
해설
괄호 안이 FALSE 인 105·107 만 NOT 을 거쳐 TRUE 가 되며, 103(분류 NULL)과 104(조회수 NULL)는 괄호 안이 UNKNOWN 이고 NOT UNKNOWN 도 UNKNOWN 이라 제외된다.
106 은 분류가 NULL 이어도 조회수 150 > 100 이 TRUE 라 OR 전체가 TRUE 가 되어 빠진다.
- 107 의 조회수 100 은 100 초과가 아니므로 결과에 포함된다.
- 분류가 NULL 인 103 을 FALSE 로 보면 잘못 포함된다.
- 조회수가 NULL 인 104 도 UNKNOWN 이라 출력되지 않는다.
오류나 개정된 내용이 보이면 알려주세요