기출문제/정보처리기사

2019년 2회 정보처리기사 기출문제 16번

엉클지니 2025. 4. 27. 22:37
반응형

16. STUDENT 테이블에 독일어과 학생 50, 중국어과 30, 영어영문학과 학생 50명의 정보가 저장되어 있을 때, 다음 두 SQL문의 실행 결과 튜플 수는? (, DEPT 칼럼은 학과명)

    ① ⓐ 3, 3          ② ⓐ 50, 3

     130, 3      ④ ⓐ 130, 130

 

 

 

 


16번 문제 분석

문제:

STUDENT 테이블에 다음과 같이 저장되어 있을 때, 두 SQL 문을 실행한 후 결과 튜플 수는?

  • 독일어과 50명
  • 중국어과 30명
  • 영어영문학과 50명

총 학생 수: 50 + 30 + 50 = 130명


SQL 문 각각 분석 🧐

ⓐ SELECT DEPT FROM STUDENT;

  • 의미: STUDENT 테이블에서 DEPT(학과명)만 전부 조회하라는 뜻입니다.
  • SELECT만 사용했기 때문에 중복 제거 안 함.
  • → 학생 130명의 DEPT가 그대로 다 출력됩니다.
  • 즉, 결과 튜플 수 = 130개입니다!

✅ ⓐ의 결과: 130개


ⓑ SELECT DISTINCT DEPT FROM STUDENT;

  • 의미: STUDENT 테이블에서 중복 없이(DEPT)만 조회하라는 뜻입니다.
  • DISTINCT 키워드가 붙어 있기 때문에, 같은 학과명은 한 번만 나옵니다.
  • 현재 학과는 3개입니다:
    • 독일어과
    • 중국어과
    • 영어영문학과
  • 학과명 3개만 출력됩니다.

✅ ⓑ의 결과: 3개


표로 정리하면

구분 실행 내용 결과 튜플 수

학과명 모두 출력 (중복 허용) 130개
학과명 중복 없이 출력 (DISTINCT 사용) 3개

✨ 최종 결론

  • ⓐ 결과: 130개
  • ⓑ 결과: 3개

👉 **정답은 ❸번 (ⓐ 130, ⓑ 3)**입니다! 🎯


한 번에 외우는 꿀팁 🍯

  • SELECT만 쓰면 → "다 나온다" (중복 포함)
  • SELECT DISTINCT 쓰면 → "한 번만 나온다" (중복 제거)