h-i-s-t-o-r-y

[Oracle] 프로그래머스 SQL 고득점 Kit - GROUP BY 본문

Algorithm

[Oracle] 프로그래머스 SQL 고득점 Kit - GROUP BY

H' 2021. 7. 13. 10:17

https://programmers.co.kr/learn/courses/30/lessons/59040

 

코딩테스트 연습 - 고양이와 개는 몇 마리 있을까

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디

programmers.co.kr

SELECT ANIMAL_TYPE, COUNT(*)
FROM ANIMAL_INS
GROUP BY ANIMAL_TYPE
HAVING ANIMAL_TYPE IN ('Cat', 'Dog')
ORDER BY ANIMAL_TYPE;

https://programmers.co.kr/learn/courses/30/lessons/59041

 

코딩테스트 연습 - 동명 동물 수 찾기

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디

programmers.co.kr

SELECT *
FROM (
    SELECT NAME, COUNT(NAME) CNT
    FROM ANIMAL_INS
    GROUP BY NAME
    ) T
WHERE CNT >= 2
ORDER BY NAME;

https://programmers.co.kr/learn/courses/30/lessons/59412

 

코딩테스트 연습 - 입양 시각 구하기(1)

ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물

programmers.co.kr

SELECT HOUR, COUNT(*)
FROM
    (SELECT TO_CHAR(DATETIME,'HH24') AS HOUR
    FROM ANIMAL_OUTS)
WHERE HOUR BETWEEN 09 AND 19
GROUP BY HOUR
ORDER BY HOUR;

https://programmers.co.kr/learn/courses/30/lessons/59413

 

코딩테스트 연습 - 입양 시각 구하기(2)

ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물

programmers.co.kr

SELECT DATETIME, COUNT(*)-1
from (SELECT TO_NUMBER(TO_CHAR ( LEVEL ))-1 as DATETIME FROM DUAL CONNECT BY LEVEL <= 24
      union all
      select TO_NUMBER(TO_CHAR (DATETIME,'HH24')) from ANIMAL_OUTS) 
group by DATETIME
order by DATETIME;

 

 

Comments