Нахождение пути клиента (каналов), сделанного пользователями в Google BigQuery
Я хочу найти пользователя "Путешествие к клиенту", сделанного через каналы онлайн-маркетинга. Схема моего набора данных аналогична Google Merchandise Store, которую можно найти здесь: https://support.google.com/analytics/answer/3437719?hl=en
Вот так выглядят мои входные данные (пример):
+---------------+-------+------------+---------+--------------+-------------+
| fullVisitorId | visit | visitTime | revenue | transactions | channel |
+---------------+-------+------------+---------+--------------+-------------+
| 1234 | 1 | 1516468217 | null | null | Direct |
| 1234 | 2 | 1517937012 | null | null | EMail |
| 1234 | 3 | 1523031014 | null | null | Organic |
| 1234 | 4 | 1530461419 | null | null | Organic |
| 1234 | 5 | 1531152611 | null | null | Paid Search |
| 1234 | 6 | 1531411812 | 1393000 | 1 | Organic |
+---------------+-------+------------+---------+--------------+-------------+
Я уже сделал этот SQL-запрос:
WITH
_step1 AS (SELECT
DISTINCT
a.fullVisitorId,
a.visitNumber,
a.visitStartTime,
a.Date,
a.totals.totalTransactionRevenue AS totalTransactionRevenue,
a.totals.transactions AS transactions,
a.channelGrouping AS channelGrouping
FROM
`data` a,
unnest(a.hits) as h
)
SELECT
a.fullVisitorId as visitor,
STRING_AGG(channelGrouping, '>') AS CustomerJourney,
SUM(totalTransactionRevenue) AS Umsatz,
SUM(transactions) AS transaktionen
FROM
_step1 as s
GROUP BY fullVisitorId
Результаты должны выглядеть так:
+--------+----------------------------+---------+---------------+
| visitor| CustomerJourney | Umsatz | transaktionen |
+--------+----------------------------+---------+---------------+
|1234 | Direct>EMail | null | null |
|1234 | Organic | null | null |
|1234 | Organic>Paid Search>Organic| 1393000 | 1 |
+--------+----------------------------+---------+---------------+
Что я на самом деле получаю:
+--------+-------------------------------------------------+---------+---------------+
| visitor| CustomerJourney | Umsatz | transaktionen |
+--------+-------------------------------------------------+---------+---------------+
|1234 | Direct>EMail>Organic>Organic>Paid Search>Organic|1393000 |1 |
+--------+-------------------------------------------------+---------+---------------+
Сложная часть:
Существует период отслеживания конверсий (30 дней), что означает, что новый путь клиента начнется, если с первого посещения прошло 30 дней или если пользователь завершил транзакцию (новая строка). Есть метки времени для каждого визита.
Какой запрос я должен начать учитывать период отслеживания конверсий?