首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >table_date_range中的BigQuery select语句找不到架构

table_date_range中的BigQuery select语句找不到架构
EN

Stack Overflow用户
提问于 2015-11-30 23:23:31
回答 1查看 201关注 0票数 2

我在BigQuery中创建了一个汇总表,其中包含每天的汇总数据(例如,20151127)。我想要做的是看一看我拥有的最后一个汇总数据,并将其作为搜索新数据的起点。例如,如果我拥有的最后一个日期是2015-11-27,我想在其上添加一天,然后搜索从2015-11-28到今天的GA数据。

我希望通过提供select来使用table_date_range函数来实现这一点。例如:

代码语言:javascript
运行
复制
select
*
from
FROM
    TABLE_DATE_RANGE(
        [id::projectId.ga_sessions_]
        ,(
            select 
                date_add(
                    timestamp(max(session_date))
                    , 1
                    , 'DAY'
                )
            from
                [id::projectId.daily_pageview_data]
        )
        ,CURRENT_TIMESTAMP()
    )

我不能让这个select语句与BigQuery一起工作。有没有人知道这样查询的方法?我之所以尝试这样做,是因为我想每天刷新我的汇总表,但我不想每次运行脚本时都必须重新查询所有数据。

EN

回答 1

Stack Overflow用户

发布于 2015-12-01 08:09:42

您将需要一个奢华的表- calendar_dates,其中只包含日期,如下所示

代码语言:javascript
运行
复制
2015-11-24   
2015-11-25   
2015-11-26   
2015-11-27   
2015-11-28   
2015-11-29   
2015-11-30   
2015-12-01   
2015-12-02   
2015-12-03   
2015-12-04  

Than,asked完成了您所要求的操作

代码语言:javascript
运行
复制
SELECT 
  *
FROM (
  TABLE_QUERY(YourDataset,
    'table_id IN (
        SELECT 
          "ga_sessions_" + REPLACE(DATE(DATE_ADD(TIMESTAMP(DAY), 1, 'DAY')), '-', '')
        FROM temp.calendar_dates AS days
        CROSS JOIN (
          SELECT MAX(session_date) max_date
          FROM YourDataset.daily_pageview_data
        ) max_avail_day
        WHERE DAY BETWEEN max_date AND CURRENT_DATE()    
    )'
  )
)

要创建奢华的表格- calendar_dates -您可以使用下面的脚本,并设置:var_start和:var_end以反映您的需求。如果出于某种原因你不想要额外的表格-你可以在上面的表格中嵌入下面的代码来代替temp.calendar_dates引用

代码语言:javascript
运行
复制
SELECT DATE(DATE_ADD(TIMESTAMP(:var_start), pos - 1, "DAY")) as day
FROM (
     SELECT ROW_NUMBER() OVER() AS pos, *
     FROM (FLATTEN((
     SELECT SPLIT(RPAD('', 1 + DATEDIFF(TIMESTAMP(:var_end), TIMESTAMP(:var_start)), '.'),'') AS h
     FROM (SELECT NULL)),h
)))
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34001971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档