목록mysql (39)
ღ yuni_world ღ
📌 문제링크https://school.programmers.co.kr/learn/courses/30/lessons/133027 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr📌 문제풀이1. UNION ALL 사용withraw as ( select * from FIRST_HALF union all select * from JULY), raw2 as ( select *, row_number() over(order by total_order desc) as rn from (select flavor, sum(total_order) as total_order from raw ..
📌 문제링크https://school.programmers.co.kr/learn/courses/30/lessons/131124 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr📌 문제풀이withraw1 as ( select *, count(review_id) over(partition by member_id) as review_cnt from REST_REVIEW )select a.member_name, b.review_text, date_format(b.review_date, '%Y-%m-%d') as review_datefrom MEMBER_PROFILE a join raw1 b on a..
📌 문제링크https://school.programmers.co.kr/learn/courses/30/lessons/59413# 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr📌 문제풀이## 시간 여백 채우기 위하여 재귀함수 활용with recursive base as ( select 0 as hour union all select hour+1 from base where hour 📖 NOTEANIMAL_OUTS 테이블을 이용해 시간대별 입양 건수를 GROUP BY로 집계하게 되면 입양 기록이 없는 시간대의 경우 아래오 같이 해당 시간대의 행 자체가 생성되지 않음따라서..
📌 재귀 쿼리란?SQL에서는 CTE(Common Table Expression) 중 WITH RECURSIVE 구문을 사용하면 자기 자신을 반복적으로 호출하는 형태의 재귀 쿼리를 만들 수 있음조직도나 카테고리 트리, 댓글처럼 부모-자식 관계가 있는 계층형 데이터를 조회할 때 주로 활용됨📚 재귀 쿼리 (WITH RECURSIVE 문) 동작 방식 (아래 쿼리 기본 구조 참고)Anchor 쿼리로 초기 데이터 1회 실행그 결과를 이용해 Recursive 쿼리 반복 실행UNION ALL로 계속 합치다가 종료 조건 만족 시 멈춤🔴 재귀 쿼리에 종료 조건이 없으면 자기 자신을 무한히 호출하게 되어 무한 루프가 발생하기 때문에, 종료 조건이 필수로 필요➡️쿼리 기본 구조WITH RECURSIVE cte_name ..