# 搜索用户已解决话题数

**URL:** <https://meta.discourse.org/t/search-for-number-of-solved-topics-per-user/223364>\
**Category:** Data & reporting\
**Tags:** sql-query\
**Created:** [2022年四月5日 16:23 UTC](https://meta.discourse.org/t/search-for-number-of-solved-topics-per-user/223364 "2022-04-05T16:23:35Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![JammyDodger](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jammydodger/32/254611_2.png) [@JammyDodger](https://meta.discourse.org/u/JammyDodger)\
**Post date:** [2022年四月6日 20:42 UTC](https://meta.discourse.org/t/search-for-number-of-solved-topics-per-user/223364/5 "2022-04-06T20:42:33Z")

</div>

> [@lju](#):
>
> 我需要 users 表、user\_actions 表和 groups 表。

我认为如果你使用 `group_users`，你只需要两个表。也许是这样的：

```plaintext
-- [params]
-- string :group_name = staff
-- date :date_from = 01/04/2022
-- date :date_to = 01/05/2022

SELECT
gu.group_id,
ua.user_id,
COUNT(1) AS solved_count
FROM user_actions ua
JOIN group_users gu on ua.user_id = gu.user_id
WHERE ua.action_type = 15
AND gu.group_id = (SELECT id FROM groups WHERE name = :group_name)
AND ua.created_at::date BETWEEN :date_from::date AND :date_to::date
GROUP BY gu.group_id, ua.user_id
ORDER BY solved_count DESC

```

（供参考，group\_name 区分大小写）

* * *

**更新：** 迟来的意识到，当我使群组查找比直接使用 `group_id` 更用户友好时，我添加了第三个。但_可以_用两个来完成。 🙂

---

_[View the full topic](https://meta.discourse.org/t/search-for-number-of-solved-topics-per-user/223364)._
