Data/Data Analysis
2024. 9. 14.
[MySQL] with recursive 구문 활용법
SQL관련 코딩에 대해서 공부하던중에 "0시~23시까지 속한 특정데이터 합산을 구해야함" 라는 문제가 있었고, 여기서 주의할점은 합산에 필요한 데이터에서 특정 시간대가 존재하지않을수도 있었다. 예시로, 계산에 사용되는 데이터에는 11시 데이터가 없을가능성이 있다. 따라서 11시에 해당되는 값은 0이 되어야한다. 그렇다면 0시~23시까지 있는 테이블을 만들어서 계산에 활용된 테이블을 join시켜줘야하는데, 0시~23시까지 있는 테이블을 어떻게 만들지가 관건이였다. 찾아보니 아래와같이 with recursive구문을 사용하면 쉽게 생성이 가능했다. WITH RECURSIVE DIGIT AS ( SELECT 0 as number UNION ALL SELECT number + 1 FROM ..