Я попытался выполнить этот запрос, и он действителен, но вернул 0kb:
SELECT eventName1, eventName2, eventName3, COUNT(*) AS COUNT FROM (
SELECT userProp.value.string_value AS accountID, app_info.firebase_app_id AS appInstanceID, event_timestamp AS eventTimestamp, event_name AS eventName1,
LAG ( event_name, 1) OVER (PARTITION BY app_info.firebase_app_id ORDER BY event_timestamp) AS eventName2,
LAG ( event_name, 2) OVER (PARTITION BY app_info.firebase_app_id ORDER BY event_timestamp) AS eventName3
FROM `app_name.app_events_20180303*`, UNNEST(user_properties) AS userProp, UNNEST(event_params) AS eventParams
WHERE ( eventParams.value.string_value = "app" OR event_name = "app_remove") AND userProp.key = "account_id"
ORDER BY appInstanceID, eventTimestamp)
WHERE eventName3 = "app_remove"
GROUP BY eventName1, eventName2, eventName3
ORDER BY count DESC
BigQuery отображает «Этот запрос будет обрабатывать 16 МБ при запуске», но Query вернул нулевую запись.
В идеале я хотел бы видеть результат в таблице с 2 событиями, приводящими к событию удаления, как показано на рисунке ниже:
Большой запрос на 2 события перед удалениемсобытие