Google apps script 如何通过应用程序脚本从谷歌工作表中插入2D数组进行大查询?

Google apps script 如何通过应用程序脚本从谷歌工作表中插入2D数组进行大查询?,google-apps-script,google-bigquery,Google Apps Script,Google Bigquery,我在设置了模式的大查询中有一个空白表 我在Google工作表中有数据,列的顺序与表模式相同 当我从谷歌电子表格中获取数据时,我会得到一个2D数组[[xxx1,yyyy1,zzz1],[xxx2,yyyy2,zzz2]]等等 如何将数组内容插入到大查询表中 我想我需要使用以下代码-但是数据的格式是什么变量,如何将数组设置为该格式 let job = { configuration: { load: { destinationTable: { projectId: proje

我在设置了模式的大查询中有一个空白表

我在Google工作表中有数据,列的顺序与表模式相同

当我从谷歌电子表格中获取数据时,我会得到一个2D数组[[xxx1,yyyy1,zzz1],[xxx2,yyyy2,zzz2]]等等

如何将数组内容插入到大查询表中

我想我需要使用以下代码-但是数据的格式是什么变量,如何将数组设置为该格式

let job = {
configuration: {
  load: {
    destinationTable: {
      projectId: projectId,
      datasetId: datasetId,
      tableId: tableId
    }
  }
}
};
job = BigQuery.Jobs.insert(job, projectId, data [what do I need here??]);
非常感谢

编辑:我应该补充一点,我不能直接将google工作表连接到表和流。该工作表只是一个权宜之计,每周收集一行数据,并添加一些数据,然后将其转储到大查询中——最终将有成百上千行数据,因此无法留在谷歌工作表中

EDIT2:数据也是各种类型的字符串、整数和日期

问题:
  • BigQuery.Jobs
    接受blob
    数据
    。所以你需要它以水滴的形式出现
修正:
  • 使用
    newBlob
    将数据转换为blob格式
输出:

参考资料:
问题:
  • BigQuery.Jobs
    接受blob
    数据
    。所以你需要它以水滴的形式出现
修正:
  • 使用
    newBlob
    将数据转换为blob格式
输出:

参考资料:

非常感谢!非常感谢!
function test() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var rows = sheet.getRange("A1:B2").getValues();
  // rows data is 2D string array
  Logger.log(rows); 

  // newBlob only accepts String so we convert rows into one
  var rowsString = rows.join("\n");
  Logger.log(rowsString);

  // data below is now of type Blob object
  var data = Utilities.newBlob(rowsString, 'application/octet-stream');
  Logger.log(data); 
}