# Data Explorer 查询 - 员工覆盖

**URL:** https://meta.discourse.org/t/data-explorer-query-staff-coverage/234241
**Category:** Data & reporting
**Tags:** sql-query
**Created:** [2022年七月28日 07:26 UTC](https://meta.discourse.org/t/data-explorer-query-staff-coverage/234241 "2022-07-28T07:26:18Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![Vu\_Tran\_Nguyen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/vu_tran_nguyen/32/262890_2.png) [@Vu\_Tran\_Nguyen](https://meta.discourse.org/u/Vu_Tran_Nguyen)
#### Post date: [2022年七月28日 07:26 UTC](https://meta.discourse.org/t/data-explorer-query-staff-coverage/234241/1 "2022-07-28T07:26:19Z")

</div>

大家好，

您是否知道数据探索器查询，可以帮助查看在特定时间段内员工帖子/主题的数量和百分比？

感谢您的所有帮助。

---

<div class="post-metadata">

### Author: ![michebs](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/michebs/32/190102_2.png) [@michebs](https://meta.discourse.org/u/michebs)
#### Post date: [2022年七月28日 09:27 UTC](https://meta.discourse.org/t/data-explorer-query-staff-coverage/234241/2 "2022-07-28T09:27:04Z")

</div>

希望以下查询能帮助您。

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

WITH posts_data AS (
    SELECT 
        COUNT(*) AS total_posts,
        SUM(CASE
            WHEN u.admin = 't' OR u.moderator = 't' THEN 1 
            ELSE 0
        END) AS staff_posts
    FROM posts p
    INNER JOIN users u ON u.id = p.user_id
    WHERE p. post_type = 1
        AND p.deleted_at ISNULL
        AND p.created_at BETWEEN :start_date AND :end_date
        AND p.user_id > 0
)
        
SELECT 
    total_posts, 
    staff_posts,
    ROUND((staff_posts/total_posts::decimal)*100,2) "staff_posts %"
FROM posts_data

```

| total\_posts | staff\_posts | staff\_posts % |
| --- | --- | --- |
| 7400 | 3108 | 42.0 |

---

<div class="post-metadata">

### Author: ![Vu\_Tran\_Nguyen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/vu_tran_nguyen/32/262890_2.png) [@Vu\_Tran\_Nguyen](https://meta.discourse.org/u/Vu_Tran_Nguyen)
#### Post date: [2022年七月28日 09:35 UTC](https://meta.discourse.org/t/data-explorer-query-staff-coverage/234241/3 "2022-07-28T09:35:52Z")

</div>

您好 @michebs，

感谢您的分享。请问我们能否将此功能应用于我们自己创建的特定群组？

比如说，我们有一个员工群组，但并非所有员工都是版主或管理员，因此我们需要创建一个名为“Katalon\_team”的新群组，我们能否获取该 Katalon 团队中所有人员的数据？

谢谢。

---

<div class="post-metadata">

### Author: ![michebs](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/michebs/32/190102_2.png) [@michebs](https://meta.discourse.org/u/michebs)
#### Post date: [2022年七月28日 11:21 UTC](https://meta.discourse.org/t/data-explorer-query-staff-coverage/234241/4 "2022-07-28T11:21:42Z")

</div>

我调整了查询，并将组名添加为输入参数，这样它就可以适用于任何组。希望对您有帮助。

```sql
--[params]
--date :start_date = 2022-01-01
--date :end_date = 2023-01-01
--string :group_name = staff

WITH group_filter AS (
    SELECT user_id FROM group_users gu
    JOIN groups g ON g.id = gu.group_id
    WHERE LOWER(g.name) LIKE '%'||:group_name||'%'
),

posts_data AS (
    SELECT 
        COUNT(*) AS total_posts,
        SUM(CASE
            WHEN gf.user_id ISNULL THEN 0
            ELSE 1
        END) AS staff_posts
    FROM posts p
    LEFT JOIN group_filter gf ON gf.user_id = p.user_id
    WHERE p. post_type = 1
        AND p.deleted_at ISNULL
        AND p.created_at BETWEEN :start_date AND :end_date
        AND p.user_id > 0
)
       
SELECT 
    total_posts, 
    staff_posts,
    ROUND((staff_posts/total_posts::decimal)*100,2) "staff_posts %"
FROM posts_data

```

---

<div class="post-metadata">

### Author: ![Vu\_Tran\_Nguyen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/vu_tran_nguyen/32/262890_2.png) [@Vu\_Tran\_Nguyen](https://meta.discourse.org/u/Vu_Tran_Nguyen)
#### Post date: [2022年七月29日 07:39 UTC](https://meta.discourse.org/t/data-explorer-query-staff-coverage/234241/5 "2022-07-29T07:39:45Z")

</div>

您好 Michelle，

感谢您提供更新后的 SQL。我在运行它时遇到了问题，如下图所示。

 ![Screen Shot 2022-07-29 at 14.38.34](https://global.discourse-cdn.com/meta/original/4X/f/3/7/f3723593f42d886d7fb4644da5431497a57ec4c7.png)

请告知我如何解决此问题。谢谢。

---

<div class="post-metadata">

### Author: ![michebs](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/michebs/32/190102_2.png) [@michebs](https://meta.discourse.org/u/michebs)
#### Post date: [2022年七月29日 09:09 UTC](https://meta.discourse.org/t/data-explorer-query-staff-coverage/234241/6 "2022-07-29T09:09:19Z")

</div>

此错误似乎与缺少最后的 SELECT 语句（第 27 行）有关。

```sql
SELECT 
    total_posts, 
    staff_posts,
    ROUND((staff_posts/total_posts::decimal)*100,2) "staff_posts %"
FROM posts_data

```

这有意义吗？

---

<div class="post-metadata">

### Author: ![Vu\_Tran\_Nguyen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/vu_tran_nguyen/32/262890_2.png) [@Vu\_Tran\_Nguyen](https://meta.discourse.org/u/Vu_Tran_Nguyen)
#### Post date: [2022年七月29日 09:59 UTC](https://meta.discourse.org/t/data-explorer-query-staff-coverage/234241/7 "2022-07-29T09:59:41Z")

</div>

是的，抱歉是我的错，非常感谢您的帮助。

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [2022年八月28日 09:59 UTC](https://meta.discourse.org/t/data-explorer-query-staff-coverage/234241/8 "2022-08-28T09:59:57Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
