#sql #firebase #google-bigquery #klipfolio
#sql #огневая база #google-bigquery #klipfolio #firebase
Вопрос:
У меня есть пользовательские данные в BigQuery из приложения Firebase. Я использую Klipfolio для извлечения даты. Я хочу извлечь данные вовлеченного пользователя из диапазона времени, выбранного пользователем. Поэтому мне нужно добавить динамические переменные даты в мой SQL-запрос. Klipfolio поддерживает использование динамических переменных даты в запросе. Это синтаксис для введения переменной начальной и конечной даты, в которой я не уверен.
Я уже могу извлечь данные по дате, но такая таблица не работает для вовлеченных пользователей, поскольку одни и те же пользователи будут учитываться несколько раз.
standardSQL
SELECT
event_date,
count (distinct user_pseudo_id) AS engagedUsers
FROM
`dataTable`
WHERE
event_name = 'user_engagement'
GROUP BY
event_date
ORDER BY
event_date
Я ищу количество активных пользователей между начальной и конечной переменной даты.
Комментарии:
1. Почему бы не добавить user_seudo_id в группу по части инструкции?
Ответ №1:
Предполагая, что вы хотите отфильтровать пользовательские данные на основе поля event_date в вашей таблице и по датам начала и окончания, полученным из средств выбора даты в Klipfolio, и вы использовали имена переменных «start_date» и «end_date», ваш SQL-запрос может выглядеть следующим образом:
SELECT
event_date,
count (distinct user_pseudo_id) AS engagedUsers
FROM
`dataTable`
WHERE
event_name = 'user_engagement' and
event_date >='{props.start_date}' and
event_date <= '{props.end_date}'
GROUP BY
event_date
ORDER BY
event_date
«props» вызывает значение переменной в Klipfolio, определенное после точки, и меняет его местами перед отправкой запроса в указанную службу.
Убедитесь, что формат вывода ваших средств выбора даты указан в yyyy-MM-dd, чтобы соответствовать допустимому формату для вашего SQL-запроса.