【发布时间】:2020-12-17 13:25:06
【问题描述】:
我正在尝试使用 Google 数据洞察中的高级服务创建一个社区连接器,以连接到我的 BigQuery 数据表。连接器已全部设置完毕,我的 getData 函数返回如下查询:
var sqlString = "SELECT * FROM `PROJECT.DATASET.TABLE` WHERE " +
"DATE(timestamp) >= @startDate AND DATE(timestamp) <= @endDate;"
其中 PROJECT、DATASET 和 TABLE 用它们各自的 ID 填写。 “时间戳”字段是我的 TIMESTAMP 类型数据表中的 BigQuery 字段。
在我的 getConfig 函数中,我正在设置配置以将 daterange 对象添加到传递给 getData 的请求中:
function getConfig() {
...
config.setDateRangeRequired(true);
...
}
然后我在我的 getData 函数中返回社区连接器对象(在下面的代码中定义为“cc”变量),设置 sql 字符串、startDate 和 endDate 的查询参数,以及一些其他必要的信息:
function getData(request) {
...
return cc
.newBigQueryConfig()
.setAccessToken(accessToken) // defined earlier
.setBillingProjectId(billingProjectId) // defined earlier
.setUseStandardSql(true)
.setQuery(sqlString)
.addQueryParameter('startDate', bqTypes.STRING,
request.dateRange.startDate)
.addQueryParameter('endDate', bqTypes.STRING,
request.dateRange.endDate)
}
当我在报表中运行此连接器时,它会连接到 BigQuery 甚至查询表格,但它不会返回任何数据。当我用格式为“yyyy-mm-dd”的字符串文字替换@startDate 和@endDate 时,它按预期工作,所以我唯一的问题似乎是我无法弄清楚如何在查询(我假设我应该这样做以允许数据工作室报告中的日期范围控制)。如何配置此日期范围对象,以便人们可以控制数据工作室报告中的日期范围标签?
编辑:为澄清起见,我知道如何在报告中添加日期范围控件。问题是,即使传入了日期范围查询参数,查询也不返回任何数据。
【问题讨论】:
标签: sql google-apps-script google-bigquery google-data-studio