Q&A

Q&A

제 목 DB 과목 (허 강사님)감리사 문제풀이 질의 합니다
작성자 비마 등록날짜 2023-03-01 09:41:02 / 조회수 : 206
  • 허강사님 문제풀이반 강의 잘들었습니다

    문제풀이 수강내용중  시간관계로 질의하지 못한 내용이 있어 질의드립니다

    문제지와 책자가 다를수 있어서  책자 기준으로 문제번호와 페이지를 명시하여 질의드리겠습니다

    1)기본문제 -2  24번, (책자 페이지 248)

     -  보기3번 : 분할 이전의 전역 릴레이션에 포함된 튜플은 분할후 반드시 한개의 분할 단편에 포함되어야 한다 

        전역릴레이션 에 포함된 튜플이  여러  지역에 쪼개져서  단편화 될것 같으데 좀 이해가 안되서 질의 드립니다

    2)응용문제  16번(책자 314페이지) 

    - 질의 sql select 문장을 보면  round (avg(금액),2) 매출금액   으로  평균금액을 소수점  2째자리에서 반올림하는 함수 인것같은데요  문제의  매출평균은  480   330    150  으로 되어서  round 함수  처리결과하고 맞지 않는것 같습니다

    3) 응용문제 28번 (책자 페이지 338번)

    - 보기1번이 답으로 분포도를 고려하지 않은 것이 아니라는 고려해서  틀린답으로 되어있는데요  여기서 분포도는 얼마인지 궁금합니다

    4)신규문제 11번(책자 페이지 405)

    - 문제 괄호에 기본키는 course_id 라고 되어있습니다  ,  보기3번에는  primary key (course_id,sec_id,semester_id,year) 라고 되어있는데요   두개가 달라  틀린것으로 생각했는데  보기3번은   무슨 뜻인가요?

    감사합니다 , 좋은 하루되세요 

     

이전글 스마트폰 다운로드 및 시청불가
다음글 안드로이드, iOS 비트플레이어 재생 및 다운로드 문의
댓글 2개
  • 비마 작성시간:2023-03-04 08:31:10 1년전
  • 답변 감사합니다

    좋은 하루 되세요
  • 관리자 작성시간:2023-03-02 13:07:22 1년전
  • 안녕하세요. 회원님
    Q&A 질문의 회신 을 보내드립니다.

    1. 모든 분할 방법에 대해 분할 이전과 동등한 결과를 얻을수 있기 위해서는 반드시 한개의 분할 단편에 포함이 되어야 한다는 내용입니다.

    2. round(avg(금액),2) 부분은 데이터가 없기 때문에 꼭 round 처리가 되지 않았다고 단정하기는 어려워 보입니다. 딱 떨어지는 값일 경우에는 9999 형태의 소숫점 없이 표현되고 떨이지 않을 경우 9999.99 이렇게 2자리까지 보일수 있습니다.

    3. 가장 적절하지 않은 것은? 이 문제이고 문제의 내용만으로는 분포도를 알 수 없습니다. 분포도를 질문한 것은 아니고 index1: 사번 + 사용일자 인데 ,
    여기서 중요한 부분은 복합 인덱스일 경우 인덱스 앞에 오는 사번에 대해서 어떻게 조회가 되는지가 중요한데 이부분을 알 고 있는지 질문한 내용입니다.
    사번이 = 조건이면 좋은데 그렇지 않기 때문에 분포도 보다는 쿼리의 선행컬럼에 대한 조회조건을 고려해야 한다는게 문제의 요점으로 보시는게 좋을것 같습니다.

    4. 감리사 문제일 경우 이의제기를 했다면 어떻게 되었을까 하는 의문이 들긴 합니다.
    출제자의 의도는 데이터가 있는 테이블을 보여주고 해당 데이터가 나오도록 테이블 생성 DDL문를 만들었을때 문제가 없는지 찾아 보라는 질문입니다.
    course_id가 기본키로 설계 되었다고 하더라도 테이블 생성 DDL시 primary key로 (course_id, sec_id, semester, year)을 합친 형태로 DDL문을 만들더라도 주어진 릴레이션의 데이터를 처리하는데는 문제는 없습니다.
    하지만 Building은 데이터가 문제인데 숫자로 DDL문을 만들면 당장 데이터가 등록을 할 수 없기 때문에 문제가 발생을 하게 됩니다.