Hallo!
Ich hoffe, ich kann verstehen, welcher Prozentsatz der neuen Themen in einer bestimmten Kategorie in der ersten Woche keine Antwort erhalten hat und welcher Prozentsatz in der ersten Woche gelöst wurde. Hier ist meine Abfrage:
-- [params]
-- string :start_date = 2021-10-06
-- string :end_date = 2021-10-12
WITH solved_topics as
(SELECT
t.created_at::DATE,
t.id,
count(distinct case when u.action_type=15 and u.created_at < (t.created_at + INTERVAL '1 week') and u.target_topic_id=t.id then 1 ELSE NULL END) as solves,
count(distinct case when p.created_at < (t.created_at + INTERVAL '1 week') and p.topic_id=t.id and p.post_number>1 then 1 ELSE NULL END) as responses
from topics t
join user_actions as u
on u.target_topic_id = t.id
join posts as p
on p.topic_id = t.id
where t.created_at BETWEEN :start_date AND :end_date
AND t.user_id > 0
AND p.deleted_at is NULL
AND t.category_id is NOT NULL
group by t.created_at::DATE, t.id)
SELECT
st.created_at as date,
count(distinct st.id) as "Number of New Topics",
sum(st.solves)::INT as "# Solved within a week",
round(sum(st.solves)/count(distinct st.id), 2) as "% Solved",
(count(distinct st.id) - sum(st.responses))::INT as "Topics with No Response in First Week",
round((count(distinct st.id) - sum(st.responses))/count(distinct st.id), 2) as "% with No Response in First Week"
from solved_topics as st
group by date
order by date asc
Ich bin mir sicher, dass es elegantere Wege gibt, dies zu tun, aber ich habe eine Reihe von Datenpunkten stichprobenartig überprüft, und diese Zahlen stimmen mit dem überein, was ich beim Betrachten einzelner Themen sehe.
Ich würde annehmen, dass für jeden Tag innerhalb der letzten Woche der Bericht unter /admin/reports/topics_with_no_response die gleiche Anzahl von Themen ohne Antwort anzeigen sollte. In den meisten Fällen ist dies auch so; in anderen Fällen zeigt er jedoch mehr Themen ohne Antwort, als ich in meiner Abfrage erhalte.
Haben Sie eine Idee, warum das so sein könnte? Gibt es eine Möglichkeit, die Abfrage zu sehen, die den Bericht „Themen ohne Antwort“ steuert, damit ich diese vergleichen kann?
Vielen Dank im Voraus!