迭代BigQuery中的多个ga_sessions_ [date]表

时间:2019-01-08 15:52:22

标签: google-bigquery

是否可以迭代BigQuery中的多个ga_sessions表?

我不是在问如何查询多个ga_sessions表。 可以使用select * from 'a:b.c.ga_sessions_*' where _TABLE_SUFFIX between '20180501' and '20180505'在标准SQL中完成。

我正在询问使用带日期的循环,例如While loop over tables中的答案使用变量并声明游标。

原因是因为您只能使用Querying Multiple Tables Using a Wildcard Table方法查询有限数量的表。

我怀疑只能使用Python之类的编程语言,但想检查一下。

enter image description here

2 个答案:

答案 0 :(得分:1)

您可以使用:

SELECT * 
FROM `bigquery-public-data.google_analytics_sample.ga_sessions_*`

SELECT * 
FROM `bigquery-public-data.google_analytics_sample.*` 
WHERE _TABLE_SUFFIX IN (SELECT table_id 
  FROM `bigquery-public-data.google_analytics_sample.__TABLES_SUMMARY__`
  WHERE table_id 
  LIKE 'ga_session_%')

浏览数据集中的所有表。可能适用的限制是query job个(每个查询引用1000个表)和当前的wildcard table queries limitations,它们不限制表的数量。

答案 1 :(得分:0)

  

原因是因为您只能查询有限数量的表   使用使用通配符表方法查询多个表。

您在说什么限制?我看不到这样的limitation

无论如何,您可以python3 server.py Create New Camera Debug Exist Camera Exist Camera 使用通配符来查询多个查询结果,例如

UNION