当我尝试通过将查询结果附加到另一个表的 API 插入查询作业时,我现在遇到了一些问题。查看文档,这似乎可以通过插入查询作业、设置目标表并将 writeDisposition 设置为“WRITE_APPEND”来实现——如下所示:
{
"configuration":
{
"query":
{
"query": "SELECT item_id, seller_id, event_type, quant_sold, amount, event_date, total_sale_amount, unique_transaction_id FROM [OUR-DATASET-ID.OTHER-TABLE-ID] WHERE unique_transaction_id NOT IN (SELECT unique_transaction_id from [OUR-DATASET-ID.OUR-TABLE-ID])",
"destinationTable":
{
"datasetId": "OUR-DATASET-ID",
"projectId": "OUR-PROJECT-ID",
"tableId": "OUR-TABLE-ID"
},
"createDisposition": "CREATE_IF_NEEDED",
"writeDisposition": "WRITE_APPEND",
"preserveNulls": false
}
}
}
但是,这不起作用。没有数据附加到destinationTable,即使我已经验证了有问题的查询确实返回了结果。我通过 BigQuery 文档页面上的 API Explorer 尝试了同样的工作,但没有成功。但是,如果我通过 BigQuery UI 运行查询并从“启用选项”菜单中选择目标表,它确实有效。我在这里做错了什么吗?我看到将 SELECT 中的数据附加到现有表中,该表大多未得到答复。任何帮助是极大的赞赏!