이것은 상위 추천 토픽 대시보드 보고서의 SQL 버전입니다.
이 보고서는 외부 출처에서 가장 많은 클릭을 받은 토픽을 표시합니다.
--[params]
-- date :start_date
-- date :end_date
SELECT
p.topic_id,
COUNT(*) AS external_click_count
FROM incoming_links il
INNER JOIN posts p ON p.id = il.post_id
WHERE il.created_at::date BETWEEN :start_date AND :end_date
AND p.deleted_at ISNULL
GROUP BY p.topic_id
ORDER BY external_click_count DESC
작동 방식
- 이 쿼리는
posts테이블에서topic_id를 선택하고 각 게시물과 연관된 incoming links의 수를 계산합니다. created_at날짜 기준으로:start_date와:end_date사이의 incoming links만 필터링합니다.- 계산에는 삭제되지 않은 게시물(
p.deleted_at IS NULL)만 포함됩니다. - 결과는
topic_id별로 그룹화되어 토픽별 외부 클릭 수를 집계합니다. - 목록은
external_click_count의 내림차순으로 정렬되어 가장 많은 외부 클릭을 받은 토픽이 상단에 표시됩니다.
결과 예시
| topic | external_click_count |
|---|---|
| topic 1 | 1234 |
| topic 2 | 456 |
| topic 3 | 78 |
| … | … |