Мы пытаемся повысить посещаемость нашего мероприятия, найдя пользователей, которые взаимодействовали с похожим существующим контентом. С помощью ИИ-бота нам удалось составить следующий запрос.
-- [params]
-- text :keyword
-- int :min_engagements
-- null string :tag_name
WITH keyword_posts AS (
SELECT
p.id AS post_id
FROM
posts p
JOIN
topics t ON t.id = p.topic_id
LEFT JOIN
topic_tags tt ON tt.topic_id = t.id
LEFT JOIN
tags tg ON tg.id = tt.tag_id
WHERE
p.raw ILIKE '%' || :keyword || '%'
AND (:tag_name is null OR tg.name = :tag_name)
),
user_engagement AS (
SELECT
ua.user_id,
COUNT(DISTINCT ua.target_post_id) AS engaged_posts_count
FROM
user_actions ua
JOIN
keyword_posts kp ON kp.post_id = ua.target_post_id
WHERE
ua.action_type IN (1, 4, 5, 6)
AND ua.user_id NOT IN (
SELECT gu.user_id
FROM group_users gu
JOIN groups g ON g.id = gu.group_id
WHERE g.name = 'developer_relations'
)
GROUP BY
ua.user_id
)
SELECT
ue.user_id,
ue.engaged_posts_count
FROM
user_engagement ue
WHERE
ue.engaged_posts_count >= :min_engagements
ORDER BY
ue.engaged_posts_count DESC
Мы даем пользователям время, чтобы самостоятельно найти наше мероприятие и подтвердить участие (RSVP), но по мере приближения даты события мы хотим рассылать более целевые приглашения. Для этого нам нужно сопоставить существующий список RSVP и исключить этих пользователей из списка целевой аудитории. Есть ли способ получить доступ к этому списку RSVP через data-explorer?
Единственный способ, который я нашел для ручного доступа к этому списку, — использование опции экспорта для объекта «Мероприятие»:
Проблема в том, что это создает zip-файл, который отправляется мне в личные сообщения (PM), и я предполагаю, что он недоступен для Data Explorer.
