Для BigQuery мы можем извлечь специальные повторяющиеся структуры, используя UNNEST. Это работает очень хорошо, когда у вас есть данные в ключе структуры и его значении (одно из следующих: string, int или double). Однако иногда у меня есть структура с ключом ("foo") и часто с данными value.string_value, но не всегда. Следующее НЕ будет включать строку, когда отсутствует string_value:
SELECT
event_timestamp,
event_params_custom.value.string_value
FROM
`my_database.events_*` T,
UNNEST(T.event_params) event_params_custom
WHERE
event_name = "some_custom_event"
AND event_params_custom.key = "foo"
Возможно ли сделать что-то похожее на "external join" и включить все строки, даже если нет значения для ключа "foo"