有多少成员打开了欢迎私信?

有人能帮忙写一个查询,显示有多少成员打开了欢迎私信吗?

谢谢!

有多少成员打开了欢迎私信

要获取已阅读由 discobot 用户发送的欢迎私信的非管理员用户数量,您可以尝试以下方法:

SELECT
COUNT(1) AS number_of_opens
FROM topics t
JOIN topic_users tu
ON tu.topic_id = t.id
JOIN users u
ON u.id = tu.user_id
WHERE t.user_id = -2
AND u.admin = false
AND tu.last_read_post_number IS NOT NULL
15 个赞

我会试试看。非常感谢!

好的,太好了!这成功了!非常感谢。

现在需要更细的粒度。如何获取这个数字,但仅限于最近 X 个月?我尝试从插件中创建的其他查询复制了一部分查询,但没有成功。

有什么建议吗?

过去 N 个月内打开欢迎私信的非管理员用户数量

试试这个:

-- [params]
-- int :months_ago = 1
WITH query_period as (
    SELECT
        date_trunc('month', CURRENT_DATE) - INTERVAL ':months_ago months' as period_start,
        date_trunc('month', CURRENT_DATE) - INTERVAL ':months_ago months' + INTERVAL '1 month' - INTERVAL '1 second' as period_end
)
SELECT
COUNT(1) AS number_of_opens
FROM topics t
JOIN topic_users tu
ON tu.topic_id = t.id
RIGHT JOIN query_period qp
    ON t.created_at >= qp.period_start
JOIN users u
ON u.id = tu.user_id
WHERE t.user_id = -2
AND u.admin = false
AND tu.last_read_post_number IS NOT NULL
AND t.created_at <= qp.period_end
4 个赞