문제
아래는 쿼리의 '디자인 보기'이다. 다음 중 아래 쿼리의 실행 결과로 옳은 것은?
[지도학생] 테이블(필드: 이름(기본 키), 전공, 입학연도)을 원본으로 한 쿼리 디자인 그리드:
| 필드: | 이름 | 전공 | 입학연도 |
|---|---|---|---|
| 테이블: | 지도학생 | 지도학생 | 지도학생 |
| 표시: | 체크함 | 체크함 | 체크 안 함 |
| 조건: | ='컴퓨터공학' | <2018 |
① 2018년 전에 입학했거나 컴퓨터공학을 전공하는 지도 학생들의 이름과 전공을 표시 ② 2018년 전에 입학하여 컴퓨터공학을 전공하는 지도 학생들의 이름과 전공을 표시 ③ 2018년 전에 입학했거나 컴퓨터공학을 전공하는 지도 학생들의 이름, 전공, 입학연도를 표시 ④ 2018년 전에 입학하여 컴퓨터공학을 전공하는 지도 학생의 이름, 전공, 입학연도를 표시
정답
2번
해설
정답: 2. 두 조건('전공=컴퓨터공학', '입학연도<2018')이 같은 조건 행에 있으므로 AND로 결합된다(둘 다 만족). 또 입학연도는 '표시' 체크가 해제되어 결과에 나타나지 않으므로 이름과 전공만 표시된다.
오답 풀이
- 1번: 같은 행 조건은 OR가 아니라 AND이므로 '~거나'는 옳지 않다.
- 2번: AND 조건이며 입학연도는 표시되지 않아 이름·전공만 나오므로 옳다.
- 3번: OR 해석이 틀렸고 입학연도도 표시되지 않으므로 옳지 않다.
- 4번: 조건(AND)은 맞으나 입학연도가 표시되지 않으므로 '입학연도를 표시'는 옳지 않다.
보충 개념 쿼리 디자인에서 같은 행의 조건은 AND, 다른 행(또는)의 조건은 OR로 결합된다. '표시' 체크를 해제한 필드는 조건에만 쓰이고 결과에는 나타나지 않는다.