2016-07-06 89 views
2

有没有使用日期变量作为参数TABLE_DATE_RANGE()的方法?BigQuery中的动态TABLE_DATE_RANGE

我的意思是,我的目标是分析用户在购买后的下周行为。

我试图得到的是类似的东西:

TABLE_DATE_RANGE([mydata.], 
       TIMESTAMP(purchaseDate), 
       TIMESTAMP(DATE_ADD(purchaseDate,7,'DAY'))) 

在那里我以前计算“purchaseDate”,查询的一段固定的时间。这将为每个用户动态查询时间范围。我不确定这种方法是否违反BQ结构逻辑。

+0

它应该正常工作。你可以添加一个[最小完整的可验证示例](http://stackoverflow.com/help/mcve)?创建它时,你可能很容易发现自己的问题。另外,'DATE_ADD'总是返回一个时间戳,所以不需要使用'TIMESTAMP(DATE_ADD(...))'。 – Backlin

+1

谢谢你的建议,Backlin。我会尽快处理这个例子。 –

+0

您可以使用投票下方发布的答案左侧的勾号标记接受的答案。请参阅meta.stackexchange.com/questions/5234/...为什么它很重要!投票答案也很重要(如果还没有的话)。表决有用的答案。还有更多...当有人回答你的问题时,你可以检查怎么做 - stackoverflow.com/help/someone-answers。如果您发现此答案有用并解决您的问题 - 请执行以下操作:o) –

回答

3

TABLE_DATE_RANGE至少不会接受任何字段名称,因为在评估时没有可用的字段

+0

您有很轻的机会用TABLE_QUERY处理您的挑战 - 但这取决于细节。我建议你单独提出你的案例的详细问题 –

+0

谢谢米哈伊尔。我一直在阅读关于这个功能。 –

+0

我已经发布了一个新的http://stackoverflow.com/questions/38243980/dynamic-date-range-with-table-query –