小编Tyl*_*hon的帖子

如何在 Data Studio BigQuery 社区连接器的 SQL 查询中包含日期范围

我正在尝试使用 Google Data Studio 的高级服务创建一个社区连接器来连接到我的 BigQuery 数据表。连接器已全部设置完毕,我的 getData 函数返回一个查询,如下所示:

var sqlString = "SELECT * FROM `PROJECT.DATASET.TABLE` WHERE " +
"DATE(timestamp) >= @startDate AND DATE(timestamp) <= @endDate;"
Run Code Online (Sandbox Code Playgroud)

其中 PROJECT、DATASET 和 TABLE 填写各自的 ID。“时间戳”字段是我的 TIMESTAMP 类型数据表中的 BigQuery 字段。

在我的 getConfig 函数中,我设置配置以将日期范围对象添加到传递到 getData 的请求中:

function getConfig() {
  ...
  config.setDateRangeRequired(true);
  ...
}
Run Code Online (Sandbox Code Playgroud)

然后,我在 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)
} …
Run Code Online (Sandbox Code Playgroud)

sql google-apps-script google-bigquery looker-studio

2
推荐指数
1
解决办法
2835
查看次数