Мне нужно добавить динамическую переменную даты в запрос BigQuery через Klipfolio

#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-запроса.