javascript - 从 Google Apps 脚本查询 Google Sheet
问题描述
以前,我会使用 Google Visualization API 查询 google sheet。由于身份验证问题,我一直在努力将我的 Google Chart 转换为使用 Google Apps Script。如何使用 Google Apps 脚本执行 GROUP BY 查询以发送到我的 Google Chart?
旧方式(谷歌可视化 API)
function getCurrentData() {
URL = 'https://docs.google.com/spreadsheets/d/SHEET_ID/gviz/tq?gid=2017811003&headers=1';
var query = new google.visualization.Query(URL);
var queryString = 'SELECT A, B, C GROUP BY A, B';
query.setQuery(queryString);
query.send(drawChartFunct);
}
新方式(Google Apps 脚本)
function getCurrentData() {
var ssID = "SHEET_ID",
sheet = SpreadsheetApp.openById(ssID).getSheets()[2],
data = sheet.getRange("A1:C13").getValues()
??Query_Code??
return data;
}
解决方案
getValues 返回一个数组数组(二维数组/多维数组)。Google Apps 脚本不包含处理此类对象的自己的方法,因此您应该使用 JavaScript “vanilla” JavaScript 或库。
推荐阅读
- amazon-web-services - 如何在 Step Function 中包含 AWS Glue 爬网程序
- reactjs - 如何更改数组中的布尔值?
- amazon-web-services - 通过 Amazon Certificate Manager 的子域 SSL 不起作用
- express - 关于使用 Express-Gateway 进行 API 访问和使用 JWT 进行用户身份验证的建议
- javascript - 如何在 mongodb 文档中设置累积值?
- cassandra - 无法在 VM 上本地从 .cmd 访问 CQLSH
- javascript - 堆限制附近的无效标记压缩分配失败 - JavaScript 角度堆内存不足
- python - 错误:ValueError:要解包的值太多(预期为 3)
- java - 引起:java.lang.IllegalStateException:尝试重新打开一个已经关闭的对象:SQLiteDatabase
- php - 将一个数组合并到另一个数组