要获取更新的行数,可以使用BigQuery的DML操作返回的ROW_COUNT()
函数。以下是一个示例代码,演示如何执行更新操作并获取更新的行数:
from google.cloud import bigquery
# 初始化BigQuery客户端
client = bigquery.Client()
# 定义更新操作的SQL语句
sql = """
UPDATE `project.dataset.table`
SET column1 = 'new_value'
WHERE condition_column = 'condition_value'
"""
# 执行更新操作
job = client.query(sql)
# 等待更新操作完成
job.result()
# 获取更新的行数
row_count = job.num_dml_affected_rows
print(f"Updated {row_count} rows.")
在上述代码中,首先通过bigquery.Client()
初始化BigQuery客户端。然后,定义更新操作的SQL语句,并使用client.query()
方法执行更新操作。接下来,使用job.result()
等待更新操作完成。最后,使用job.num_dml_affected_rows
获取更新的行数。
请注意,这只适用于DML操作(如UPDATE、DELETE),而不适用于DDL操作(如CREATE、DROP)。