【发布时间】:2015-06-02 13:30:58
【问题描述】:
我正在尝试在 Tableau 中创建一个自定义查询以在 Google 的 BigQuery 上使用。目标是在 Tableau 中有一个偏移量参数来更改基于日期的 WHERE 子句中使用的偏移量。
在 Tableau 中它看起来像这样:
SELECT
DATE_ADD(UTC_USEC_TO_MONTH(CURRENT_DATE()),<Parameters.Offset>-1,"MONTH") as month_index,
COUNT(DISTINCT user_id, 1000000) as distinct_count
FROM
[Orders]
WHERE
order_date >= DATE_ADD(UTC_USEC_TO_MONTH(CURRENT_DATE()),<Parameters.Offset>-12,"MONTH")
AND
order_date < DATE_ADD(UTC_USEC_TO_MONTH(CURRENT_DATE()),<Parameters.Offset>-1,"MONTH")
但是,BigQuery 总是返回错误:
Error: DATE_ADD 2nd argument must have INT32 type.
当我在 BigQuery 编辑器中使用简单的算法尝试相同的查询时,它会失败并出现相同的错误。
SELECT
DATE_ADD(UTC_USEC_TO_MONTH(CURRENT_DATE()),5-3,"MONTH") as month_index,
FROM [Orders]
有什么解决方法吗?到目前为止,我唯一的选择似乎是在 Tableau 中进行多个偏移。
感谢您的帮助!
【问题讨论】:
-
与缺少时区功能无关。夏季比世界标准时间早 2 小时,冬季只有 1 小时。
标签: google-bigquery tableau-api google-cloud-platform