Клиентская библиотека BigQuery Python - ошибка именованных параметров - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь написать простой запрос, используя клиентскую библиотеку Python с именем «parameter», но продолжаю сталкиваться с ошибками.

Я продолжаю получать «Необъявленные параметры запроса», когда пытаюсь запустить код. Я что-то пропустил?

Мой код:

import datetime
import os
from google.cloud import bigquery

os.environ["GOOGLE_APPLICATION_CREDENTIALS"]=<path>
client = bigquery.Client(project='project_id')

query = """
    SELECT * from `<project_id>.<dataset_id>.*` 
    WHERE CAST(REGEXP_EXTRACT(_TABLE_SUFFIX, r"^(\d{8})$") AS INT64) = @date
    limit 10;
    """

query_params = [
    bigquery.ScalarQueryParameter(
        'date', 
        'INT64', 
        int((datetime.date.today().strftime('%Y%m%d'))
        )
    ]

job_config = bigquery.QueryJobConfig()
job_config.query_parameters = query_params

query_job = client.query(
    query,
    location = 'US') 

for row in query_job:
    print(row)

assert query_job.state == 'DONE'

1 Ответ

0 голосов
/ 03 июля 2018

Похоже, вам не хватает ввести job_config в аргументы вашего client.query() метода. Вы должны иметь:

query_job = client.query(
    query,
    location = 'US',
    job_config=job_config) 

Официальные документы здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...