Могут ли запросы в API bigquery python использовать переменные python? - PullRequest
0 голосов
/ 09 мая 2020

Я хочу выполнить запрос sql для нескольких таблиц в наборе данных в bigquery. У меня есть имена этих таблиц в списке в моем python скрипте, и я хочу l oop просмотреть этот список и выполнить запрос для каждой таблицы в списке.

Моя проблема в том, что я не могу понять, как структурировать свой запрос, чтобы принимать python переменные в качестве входных данных. Например, в моем скрипте есть следующие переменные:

# Variables for testing
dataset_id = 'test_dataset'
table_id = 'test_table'

Вот как я пытаюсь использовать их в моем объекте запроса:

query = """
          SELECT *
          FROM """ + dataset_id + '.' + table_id + """
          ORDER BY 1 asc;

    """

Это не работает и Я не могу найти ничего подходящего по этому поводу в Интернете. Я был бы очень признателен, если бы вы помогли мне правильно структурировать этот запрос!

1 Ответ

3 голосов
/ 09 мая 2020

Должно работать. Чтобы убедиться, что это работает, вы можете добавить обратные кавычки в начало и конец имени таблицы. Кроме того, используя f-строки в python, вы можете вставлять переменные в строки в более удобочитаемом виде.

query = f"""
          SELECT *
          FROM `{dataset_id}.{table_id}`
          ORDER BY 1 asc;

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