안녕하세요!
일段时间 동안 비슷한 내용을 검색해 보았지만, 멋진 Data Explorer 쿼리 를 포함해 비슷한 것을 찾지 못했습니다.
특정 주제가 일정 기간 동안 받은 조회수/방문 기록을 확인하고 싶습니다.
이상적으로는 아래와 같은 그래프를 개별 주제별로 보고 싶지만:
단순히 날짜별 테이블 형태라도 괜찮으며, 그래프를 포함할 수 있다면 더 좋습니다 (그래프는 Discourse 외부에서 만들 수 있습니다). 또한 모든 방문(사용자 및 익명)을 포함하는 것도 매우 중요합니다.
이것을 통해 특정 기간(더 많거나 적은 활동이 예상되는 시점) 내에서 주제 사용 현황을 추적하고 분석할 수 있을 것입니다.
이 목적에 맞는 Data Explorer 쿼리가 있는지 아시나요?
미리 감사드립니다!
Lilly
(Lillian )
10월 2, 2023, 4:10오후
2
안녕하세요 @Ayelen_Rives
다음과 같이 시도해 보세요:
-- [params]
-- int :topic_id =
-- date :start_date =
-- date :end_date =
SELECT COUNT(*) AS views
FROM topic_views
WHERE topic_id = :topic_id
AND viewed_at BETWEEN :start_date AND :end_date
토픽 ID(토픽 URL에서 가져올 수 있습니다)와 YYYY-MM-DD 형식의 날짜 범위 매개변수를 지정해야 합니다.
릴리, 안녕!
정말 유용해요! 기간 동안의 모든 뷰가 합산되니까, 데이터를 날짜별로 분리하기 위해 조사해 볼게요.
이제 어디서 시작해야 할지 알겠어요
감사합니다!!
Lilly
(Lillian )
10월 2, 2023, 4:30오후
4
도움이 되었다니 기쁩니다. 더 구체적인 쿼리가 필요하거나 추가 도움이 필요하시면 말씀해 주세요
불행히도 topic_views 테이블은 사용자가 주제를 처음 본 것만 기록하며, 하루에 사용자/IP당 한 번의 주제 조회 를 기록하지 않는다는 사실을 최근에 알게 되었습니다.
이로 인해 조회 수에 대한 시간별 분석이 다소 왜곡될 수 있으며, '처음 조회’된 경우에만 수행할 수 있습니다.
Lilly
(Lillian )
10월 2, 2023, 4:42오후
6
그렇다면 테이블 이름은 topic_first_views여야 할 텐데
죄송합니다 @Ayelen_Rives , 시도해 보았어요
수정: 관련 토론을 찾았어요:
When helping a client with a data explorer query, they noticed a difference between the topic views returned by the query, and the number on the category topic list.
Where does the difference between
SELECT COUNT(*) FROM topic_views WHERE topic_id = X
and
Topic.find(X).views
come from?
아쉽네요! 릴리의 의견에 동의합니다. 명확성을 위해 테이블 이름을 topic_first_views로 변경해야 합니다.
정보 공유해 주셔서 감사합니다. 그리고 시도해 주셔서 릴리님께도 감사드립니다!
해당 토론을 계속 지켜보겠습니다.