대충이라도 하자

프로그래머스 - 입양 시각 구하기(2) 본문

꼬꼬마 개발자 노트/SQL

프로그래머스 - 입양 시각 구하기(2)

Sueeeeee
반응형

SELECT HOUR(DATETIME) as HOUR,
       COUNT(DATETIME) as COUNT
       FROM ANIMAL_OUTS
       GROUP BY HOUR(DATETIME)
       ORDER BY HOUR(DATETIME) asc;

 

위의 sql문을 사용하면, 값이 0인 시간대는 나오지 않는다.

그래서, 변수를 선언하는 방식으로 작성

SET @HOUR = -1;

SELECT (@HOUR := @HOUR +1 ) as HOUR,
       (SELECT COUNT(*) FROM ANIMAL_OUTS WHERE HOUR(DATETIME) = @HOUR) as COUNT
       FROM ANIMAL_OUTS
       WHERE @HOUR < 23
       ORDER BY HOUR asc;

 

*** ' = '은 비교연산자로 사용하기에, 선언해줄 때는 ':='를 사용해주어야 한다.

 

 

반응형
Comments