BigQuery unterstützt SELECT-Anweisungen, aber DML-Anweisungen wie INSERT, UPDATE und DELETE.
Ja, BigQuery unterstützt jetzt SQL DML mit Standard-SQL (deaktivieren Sie "Legacy SQL verwenden" unter "Optionen anzeigen"). SQL-DML wird von Legacy-SQL nicht unterstützt.
Offizielle Dokumentation finden Sie hier: https://cloud.google.com/bigquery/sql-reference/data-manipulation-language
HINWEIS: UPDATE-, DELETE- und MERGE-DML-Anweisungen werden über -Tabellen mit Streaming-Puffer unterstützt, sofern die Anweisung keine Zeilen im Streaming-Puffer beeinflusst.
Ich habe eine DELETE - Anweisung mit der BigQuery-API getestet, es funktioniert gut für mich ... _. Dies ist der Quellcode in GCP-Composer (Luftstrom).
from airflow.contrib.operators.bigquery_operator import BigQueryOperator
bq_delete_task = BigQueryOperator(
dag = dag,
task_id = 'remove_from_table_bq',
destination_dataset_table = False,
destination_table = 'table_name',
bql = "DELETE FROM " + BQ_DATASET_NAME + "." + "table_name" + " WHERE date = '2018-06-06'",
use_legacy_sql = False
)