3

クエリの結果を別のテーブルに追加する 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 から既存のテーブルにデータを追加するのを見ましたが、ほとんど回答がありませんでした。どんな助けでも大歓迎です!

4

0 に答える 0