[Oracle] FINALWORKSHOP (9) 오답 정리

    Q.작가 정보 테이블의 모든 등록일자 항목이 누락되어 있는 걸 발견하였다. 
      누락된 등록일자 값을 각 작가의 '최초 출판도서의 발행일과 동일한 날짜'로 
      변경시키는 SQL 구문을 작성하시오 (COMMIT 처리할 것)

     

     

    나의 로직

    * TB_WRITER | TB_BOOK_AUTHOR | TB_BOOK을 조인해야한다
    * 작가별로 최초 출판일을 파악한다. < 이부분에서 막힘

     

     

     

    결과

    2292행이 나왔다..ㅎ...ㅋ....

     

    예를들어, 창비에서 1번 작가가 쓴 모든 책이 조회 되었기 때문인데, GROUP BY절로 WRITER_NM, WRITER_NO, BOOK_NO을 묶었기 때문이다. 

     

    더보기

    창작과비평사 1 1967051501
    창작과비평사 1 1968082501
    창작과비평사 1 1971033001
    창작과비평사 1 1973032501

     

     

     

    모법답안

     

     


     

    배운점

    1. 누락된 등록일자 값을 각 작가의 '최초 출판도서의 발행일과 동일한 날짜'로  
       변경시키는 SQL 구문 인데 SELECT문으로 조회했다.

    2. 서브쿼리를 잘 활용하자

    3. 작가별로 최초 출판일을 파악하는 함수는 MIN(ISSUE_DATE) 이다. 

    4. 애초에 로직도 틀렸음 ㅎㅋ.... 뭐든 JOIN 하는 습관을 버리자 

     

     

     

    728x90

    댓글