Я пытаюсь разложить несколько вложенных полей и выполнить подзапрос в Google BigQuery.
Это отлично работает.
SELECT id,
custom_field_options
FROM `project.database.ticket_fields`
'custom_field_options' - это вложенное полеи это вызывает у меня некоторые проблемы.У меня есть «custom_field_options.id» и «custom_field_options.name» и несколько других вложенных полей.
Это также отлично работает.
SELECT ticket_fields.id,
ticket_fields.raw_title,
ticket_custom_fields.name AS ticket_custom_fields_name,
ticket_custom_fields.raw_name AS ticket_custom_fields_raw_name,
ticket_custom_fields.value AS ticket_custom_fields_value,
ticket_fields.created_at
FROM `project.database.ticket_fields` AS ticket_fields
LEFT JOIN UNNEST(custom_field_options) AS ticket_custom_fields
GROUP BY 1,2,3,4,5,6
При отдельном запуске оба этих запроса работают нормально.Теперь я пытаюсь запустить первый запрос как подзапрос второго, чтобы извлечь все идентификаторы из этого запроса, и на основании этого выполнить запрос ниже.
SELECT ticket_fields.id,
ticket_fields.raw_title,
ticket_custom_fields.name AS ticket_custom_fields_name,
ticket_custom_fields.raw_name AS ticket_custom_fields_raw_name,
ticket_custom_fields.value AS ticket_custom_fields_value,
ticket_fields.created_at
FROM `project.database.ticket_fields` AS ticket_fields
LEFT JOIN UNNEST(custom_field_options) AS ticket_custom_fields
WHERE id IN (SELECT id,
custom_field_options
FROM `project.database.ticket_fields`)
GROUP BY 1,2,3,4,5,6