Запрос Data Explorer для определения дат изменения уровня доверия

Мы хотели бы приветствовать пользователей, когда они достигают уровня доверия 3. (Мы будем периодически отслеживать это с помощью запроса в Data Explorer.)

Содержит ли база данных информацию о том, когда меняется уровень доверия пользователя?
Или только текущий уровень доверия пользователя?

Спасибо,
Рэнди

Да, для этого можно использовать поле created_at в таблице group_users. Оно устанавливается в дату добавления пользователя в группу. Вы можете периодически запускать запрос, подобный приведённому ниже, чтобы найти всех пользователей, добавленных в группу за указанный интервал. Поле granted_at в запросе ожидает дату в формате yyyy-mm-dd. Например: 2020-09-15.

--[params]
-- string :group_name = trust_level_3
-- date :granted_at

SELECT
user_id,
gu.created_at::date
FROM group_users gu
JOIN groups g
ON g.id = gu.group_id
WHERE gu.created_at::date >= :granted_at
AND g.name = :group_name

Если вам нужны дополнительные сведения о пользователях, можно модифицировать запрос, добавив соединение с таблицей users или user_emails.

Это работает идеально, @simon.
Огромное спасибо!!!

Привет, @Randy_Hulett, есть ли этот запрос где-то в открытом доступе? Я ищу способ отслеживать пользователей, достигших уровней доверия 2 и 3, но не могу найти соответствующий запрос.

Если вы присоединяетесь к таблицам groups и group_users, как показал @simon, вы можете добавить что-то подобное в ваше условие WHERE:

WHERE gu.created_at::date >= :since
    AND g.name = 'trust_level_3'
    AND u.admin = false