2016-09-19 3 views
1

У нас есть секционированная таблица в bigquery Google, которую мы запрашиваем с использованием поля _PARTITIONTIME (в противном случае запросы будут стоить слишком много).Как запросить секционированную таблицу в BigQuery из таблицы

Как я могу использовать таблицу столбец _PARTITIONTIME?

+0

Вы пытались использовать пользовательский SQL вместо прямого подключения к таблице? – YABADABADOU

ответ

3

При настройке источника данных в таблице выберите «Google BigQuery» из списка доступных источников, просмотрите танец OAuth, а затем выберите свой проект и набор данных.

На этом этапе вам будет представлен список таблиц в наборе данных, а также вариант использования «Новый пользовательский SQL» внизу. Выберите этот вариант и введите свой запрос точно так же, как вы его использовали. Предполагая, что запрос содержит сегмент, аналогичный приведенному ниже:

...WHERE _PARTITIONTIME BETWEEN TIMESTAMP(“2016-05-01”) AND TIMESTAMP(“2016-05-06”) 

Теперь выделите даты в той, где пункта и нажмите на выпадающее меню «Вставка параметров» в редакторе запросов. Это позволит вам параметризовать ваш запрос и динамически выбирать даты, которые вы хотите запросить, из своей книги Tableau!

Надеюсь, это поможет!

0

Более гибким решением было бы просто перетащить стол, как обычно. После этого нажмите «datasource - конвертировать в пользовательский SQL» В этом случае таблица написала большую часть SQL для вас. Последняя часть .... DONT добавить где-разведочные работы пользователя положение и остановить Добавить это вместо:

_PARTITIONTIME AS mypartitiondate

Теперь вы можете использовать это, как и любой другой даты столбца, но вы используете раздел вместо этого. Предостережения в этом случае, если вы используете этот столбец, вы не можете сверлить ниже уровня разделов (например, пытаетесь увидеть часовые сделки в ежедневном распределенном наборе данных). Это потребует знания пользователя, чтобы начать использовать другой столбец даты для этой части.

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