По программным причинам я хотел бы выполнить один и тот же оператор DDL дважды:
INSERT INTO dataset.tabledest(id, vi)
SELECT 'test' AS id,
'value' AS vi
FROM dataset.tablesource
- При первом вызове я хотел бы создать таблицу, если она не существуети добавьте результаты запроса
- Во второй раз, когда он вызывается, я бы хотел добавить результаты
Используя API BigQuery, это можно сделать следующим образом:
- использовать оператор выбора только как запрос
- установить таблицу назначения в качестве параметра (например, используя R bigrquery API,
, destination_table='...',
) - установить
write_disposition='WRITE_APPEND'
- set
create_disposition='CREATE_IF_NEEDED'
Я не уверен, что это можно сделать с помощью одного запроса, который не требует дополнительных внешних параметров, передаваемых API.