WITH traffic_sources AS (
SELECT
EXTRACT(MONTH FROM user_visits.visited_at) AS month,
incoming_referers.incoming_domain_id,
COUNT(*) AS visit_count,
LAG(COUNT(*)) OVER (PARTITION BY incoming_referers.incoming_domain_id ORDER BY EXTRACT(MONTH FROM user_visits.visited_at)) AS prev_month_visit_count
FROM user_visits
JOIN incoming_referers
ON user_visits.user_id = incoming_referers.id
WHERE user_visits.visited_at IS NOT NULL
GROUP BY EXTRACT(MONTH FROM user_visits.visited_at), incoming_referers.incoming_domain_id
)
SELECT
month,
incoming_domain_id,
visit_count,
prev_month_visit_count,
visit_count - COALESCE(prev_month_visit_count, 0) AS change
FROM traffic_sources
ORDER BY month, incoming_domain_id
저녁 식사 후 돌아와서 쿼리를 업데이트했습니다. 한번 시도해 보시고, 진전이 있다면 알려주세요
. 제 디스커스(Discourse) 서버는 새로 생성한 것이어서 쿼리할 데이터가 충분하지 않아, SQL Server에 더미 데이터를 생성한 뒤 PGSQL로 이전했습니다.

