2015-05-18 4 views
2

Мне любопытно, можно ли выводить вложенные результаты?Результаты вывода в BigQuery

Например, предположим, что у меня есть 3 поля:

Дата, name_1, NAME_2

Могу ли я гнездо name_1 и NAME_2 в дате, группировка по дате на выходе?

Если дата одинакова для нескольких строк вывода, можете ли вы группировать связанные поля на одну и ту же дату вместе, указывая только одну уникальную дату, но несколько вложенных полей?

Я надеюсь, что это имело смысл.

Спасибо.

ответ

2

В зависимости от ваших потребностей функция NEST() или параметр конфигурации flattenResults в документации по API может быть тем, что вам нужно. Тем не менее, стоит отметить, что оба вместе не работают вместе в настоящее время: см. this answer от одного из инженеров BigQuery для получения дополнительной информации.

Кроме того, если вы используете веб-интерфейс, параметр flattenResults отображается в кнопке «show options» при составлении запроса и через флаг -flatten_results в CLI.

+0

Существует способ преодоления выше ограничений 'NEST()' + 'UnFlattenResult': JS UDF. С помощью UDF вы можете фактически ограничить ограничение NEST, принимающего только один параметр, а также вы можете записывать вложенные/повторяющиеся данные непосредственно в таблицу. Вы можете увидеть пример в http://stackoverflow.com/questions/34731855/bigquery-creat-repeated-record-field-from-query –

Смежные вопросы