새소식

SQL/GROUP BY

[GROUP BY] 고양이와 개는 몇 마리 있을까

  • -

[문제]

코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr


[문제 풀이]

고양이와 개가 각각 몇 마리인지 알아봐야 한다.

즉, ANIMAL_TYPE 의 종류를 파악해야 한다.

이번에는 GROUP BY절에 대해서 알아보도록 하자.

 

GROUP BY 컬럼

GROUP BY를 쓰면 컬럼 내부에 원하는 그룹을 생성할 수가 있다.

 

즉 위에 있는 질문을

조건 1. 동물을 조회하자.

조건 2. 고양이와 개 그룹을 생성하자.

조건 3. 해당그룹이 각각 몇마리인지 세자.

조건 4. 고양이부터 조회하자.


[코드]

정답 1

SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) as count from ANIMAL_INS GROUP BY ANIMAL_TYPE HAVING ANIMAL_TYPE = 'Cat' or ANIMAL_TYPE = 'Dog' ORDER BY ANIMAL_TYPE ASC;

* 주의사항 해당 질문에선 고양이와 개만을 조건에 안 넣어도 통과가 되지만 고양이와 개만을 추가 시켜야 해서 HAVING절을 넣었다.

 

정답 2

SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) as count from ANIMAL_INS GROUP BY ANIMAL_TYPE HAVING ANIMAL_TYPE in ('Cat', 'Dog') ORDER BY ANIMAL_TYPE ASC;

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.