代码之家  ›  专栏  ›  技术社区  ›  searain

BigQuery可以使用通配符表名和表后缀,但我正在寻找类似的解决方案,如通配符数据集和数据集后缀

  •  0
  • searain  · 技术社区  · 6 年前

    因此,您的数据集/表如下所示

    results/result1_20190101
    results/result1_20190102
    
    results/result2_20190101
    results/result2_20190102
    

    所以我可以查询所有结果1

    select * from `xxxx.results.result1*`
    

    所以我的数据集/表看起来像

    20190101/result1
    20190101/result2
    ...
    
    20190102/result1
    20190102/result2
    ...
    

    但是偶尔,我需要做一些快速检查,并且需要跨日期(在我的例子中,跨数据集)进行查询

    select * from `xxxxxx.20190101/result1`
    union all
    select * from `xxxxxx.20190102/result1`
    union all
    ...
    

    1) 第一个问题是,我是否可以在数据集上使用通配符和后缀,就像在表中一样?

    2) 第二个问题:如何使用date函数,例如date_SUB(CURRENT_date(),INTERVAL 90 DAY)获取日期值并在下面的查询中使用数据值

    'xxxxxx.20190101/result1'中选择*`
    联合所有
    从'xxxxxx.20190102/result1'中选择*`
    

    要替换硬编码值,请参见20190101、20190102等。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Mikhail Berlyant    6 年前

    BigQuery数据集上没有可用的通配符和/或后缀(至少到今天为止)

    feature request 对于 INFORMATION_SCHEMA 现在是阿尔法。您可以通过提交该网站提供的表格申请。