2017-01-30 1 views
2

Внутри ноутбука datalab можно экспортировать результаты BiqQuery непосредственно в dataframe. У меня есть пример, который работает для устаревшего SQL, и мне нужно настроить его на стандартный SQL. Я не могу найти синтаксис, который работает для этого. Вот что я думаю, что мне нужно написать:Datalab: Как экспортировать стандартный SQL-запрос запроса в dataframe?

import datalab.bigquery as bq 
import pandas as pd 

%%sql --module data_name -d standard 
SELECT COUNT(*) AS count FROM `project.dataset.ga_sessions_*` WHERE _TABLE_SUFFIX BETWEEN '20170126' AND '20170126' 

my_data_frame = bq.Query(data_name).to_dataframe() 

Что-то должно быть не так с этим синтаксисом, как я получаю ошибку:

Exception: invalid: Invalid table name: `project.dataset.table.ga_sessions_*` 

Как я могу это исправить, чтобы работать для стандартного SQL?

ответ

5

Возможно, вам нужно указать, что вы хотите использовать стандартный SQL in datalab.

Дайте нам знать, если это работает для вас (убедитесь, что ветвь уточненного с главной ветвью):

my_data_frame = bq.Query(data_name).to_dataframe(dialect='standard') 
+0

@goose - если ответ помог вам решить вашу проблему, и вы приняли его, вы можете также рассмотреть вопрос о голосовании его. Подробнее см. На странице http://stackoverflow.com/help/someone-answers и Upvote в http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work#5235: o) –

0

Обратите внимание, что это %% SQL магия была вытеснена %% Бк магия, и стандарт SQL теперь по умолчанию:

Migration guide

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