inblog logo
|
LHS's Study Space
    SQL문제풀기

    [SQL 문제 풀기] 입양 시각 구하기(2)(59413)

    lhs's avatar
    lhs
    Feb 24, 2025
    [SQL 문제 풀기] 입양 시각 구하기(2)(59413)
    Contents
    1. 문제 풀이 아이디어2. 나의 정답 코드3. 정리
    school.programmers.co.kr
    https://school.programmers.co.kr/learn/courses/30/lessons/59413
     

    1. 문제 풀이 아이디어

    • WITH RECURSIVE를 사용하여 0부터 23까지의 시간을 생성한 후, LEFT JOIN을 이용해 각 시간별 입양된 동물의 수를 구해 문제를 해결한다.

    2. 나의 정답 코드

    WITH RECURSIVE time AS ( SELECT 0 hour UNION ALL SELECT hour + 1 FROM time WHERE hour < 23 ) SELECT t.hour, COUNT(a.datetime) FROM time t LEFT JOIN animal_outs a ON HOUR(a.datetime) = t.hour GROUP BY t.hour;

    3. 정리

    • WITH RECURSIVE로 0부터 23까지의 시간을 생성한다.
    • LEFT JOIN을 사용하여 animal_outs 테이블의 datetime에서 시간만 추출한 값과 time 테이블을 조인한다.
    • GROUP BY로 각 시간별 입양된 동물의 개수를 구한다.
    • COUNT(a.datetime)을 사용하여 해당 시간에 입양된 동물의 수를 계산한다.
    Share article
    Contents
    1. 문제 풀이 아이디어2. 나의 정답 코드3. 정리

    LHS's Study Space

    RSS·Powered by Inblog