정말 쉬운 SQL 쿼리 짜는건데.. 어케 짜야할지 모르겠네요 ㅠㅠ


도서, 도서번호, 출판사, 발행년도 이렇게 릴레이션에 속성이 들어가있습니다. (기본키는 도서번호)

2010년 이후에 도서를 10개이상 발행한 출판사명을 SQL로 뽑아내고 싶은데

단순하게 where에서 조건만으로 뽑아내는게 아닌거 같은데.. 어떻게 짜야할지 모르겠네요..

  • 2016년 10월 10일에 작성됨

조회수 133


1 답변


좋아요
1
싫어요
채택취소하기

일단 출판사 명을 찾는 것임으로 선택 속성은 출판사만 하고,

SELECT 출판사

그리고 발행년도가 2010년 이후여야 하고

WHERE 발행년도 >= 2010

각 출판사 별로

GROUP BY 출판사

10개 이상 도서를 발생한 것(COUNT(도서번호))을 필터링하면

HAVING COUNT(도서번호) >= 10

다음과 같은 SQL이 될 것 같네요.

SELECT 출판사 WHERE 발행년도 >= 2010 GROUP BY 출판사 HAVING COUNT(도서번호) >= 10

SQL의 GROUP BY ... HAVING ...에 관한 내용을 공부해보시면 될 것 같습니다.

참고

  • 출판사별로 2010년 이후에 출판된 도서의 수를 알고 싶다면 다음과 같이 살짝 수정하면 됩니다. SELECT 출판사,COUNT(도서번호) as 출판횟수 WHERE 발행년도 >= 2010 GROUP BY 출판사 HAVING COUNT(도서번호) >= 10
  • 2016년 10월 10일에 작성됨
    리눅스(유닉스) 기반의 시스템에서 웹 서비스를 개발하고 있습니다.

  • 와 정말 친절한설명 감사합니다!    capdh   2016.10.10 17:57     

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close