Как получить количество решений на пользователя с помощью Data Explorer?

Учитывая, что у нас установлен плагин Discourse Solved, а также плагин Data Explorer, какой запрос нужен, чтобы получить количество решений по каждому пользователю?

Когда пользователь решает тему, в таблицу user_actions добавляется запись с action_type, установленным в 15.

Следующий запрос должен дать вам то, что вы ищете:

SELECT
user_id,
COUNT(1) AS solved_count
FROM user_actions
WHERE action_type = 15
GROUP BY user_id
ORDER BY solved_count DESC

Отлично! Большое спасибо!

Привет!

У меня ещё один вопрос по этому поводу. Учитываются ли все ответы из публичных постов, а также те, которые пользователь отметил как решение при обмене личными сообщениями с кем-то? Спасибо за помощь!

Вы не можете помечать личные сообщения как решённые. Это настройка для каждой категории.

Один из ответов в теме личных сообщений отмечен как решение. Учитывается ли это также в общем количестве решений пользователя?

Если включена настройка сайта «Разрешить отметку решений во всех темах», сообщения в личных сообщениях могут быть помечены как решения. Если сообщение в личной переписке помечено как решение, оно будет включено в подсчёт решений, который возвращается в результате запроса, который я опубликовал.

Спасибо большое, Саймон, за эту информацию!

В дополнение к вопросу Саймона выше, мы используем эту версию для просмотра количества решений на пользователя за определенный период (в формате даты yyyy-mm-dd):

--[params]
-- date :start_date
-- date :end_date

SELECT
user_id,
COUNT(1) AS solved_count
FROM user_actions
WHERE created_at::date BETWEEN :start_date AND :end_date
AND action_type = 15
GROUP BY user_id
ORDER BY solved_count DESC

Удобно, что можно отслеживать, как это меняется от месяца к месяцу.

Спасибо, Бен, что поделился этим!

Спасибо всем за эти запросы!

Я настраиваю свой форум Discourse и хотел бы узнать, как получить среднее время разрешения (time_to_resolution) для всего форума, аналогично среднему времени первого ответа (average_time_for_first_response).

Как вы думаете, с точки зрения сообщества, имеет ли смысл предоставлять такую информацию? Если да, то я не уверен, как сформировать такой запрос. Есть какие-нибудь идеи?

Спасибо!