При написании запроса для bigQuery, как написать имя таблицы и имя столбца, используя переменные вместо жесткого кодирования
В указанном ниже запросе projectname-dataset-tableName жестко закодировано в запросе
query = """
SELECT city from bigquery-public-data.openaq.global_air_quality WHERE country = 'IN'
"""
Как написать то же самое более динамичным способом? Атрибут fulltableid не возвращает совместимый формат.
query1 = """
SELECT city from """ + str(tableGAQ.full_table_id) + """ WHERE country = 'IN'
"""
1 ответ
Если у вас был следующий запрос:
query = (
"SELECT name FROM `bigquery-public-data.usa_names.usa_1910_2013` "
'WHERE state = "TX" '
"LIMIT 100"
)
Чтобы использовать переменную для динамического ввода идентификатора вашей таблицы, ваш запрос будет выглядеть следующим образом:
tableID = "`bigquery-public-data.usa_names.usa_1910_2013`"
query = (
"SELECT name FROM"+ tableID + "
'WHERE state = "TX" '
"LIMIT 100"
)
Обратите внимание, что имя вашей таблицы должно быть написано между ` `.