강의로 돌아가기
smini72121@gmail.com

MYSQL 재귀 쿼리 사용

postgreSQL의 generate_series 함수와 비슷한 기능을 하는 것을 찾아봤으나 못찾아서 재귀 함수를 사용하여 0부터 23 구현

작성중인 코드―solution.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
WITH RECURSIVE GET_HOUR (HOUR)
  AS (SELECT 0
       UNION ALL
      SELECT HOUR+1
        FROM GET_HOUR
       WHERE HOUR < 23
     )
SELECT G.HOUR, IFNULL(COUNT(ANIMAL_ID),'0')
FROM GET_HOUR G
LEFT OUTER JOIN ANIMAL_OUTS A ON G.HOUR = HOUR(DATETIME)
GROUP BY 1
ORDER BY 1

;
0 개의 답변
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다.