Google 大查询在 table 名称中间使用通配符

Google Big Query using a wildcard in middle of table name

描述了使用通配符查询 tables here。从该文档看来,通配符似乎必须出现在 table 名称的末尾。有没有办法把通配符放在别处,例如做这样的事情:

SELECT
  *
FROM
  `dataset.*_postfix`

要将每个 table 名称与给定的后缀匹配?

以下示例适用于 BigQuery 标准 SQL

中间的通配符不支持
您可以尝试的最接近的(有问题的例子)如下

SELECT _TABLE_SUFFIX as t, count(1) cnt
FROM `dataset.*`
WHERE ENDS_WITH(_TABLE_SUFFIX, '_postfix')  
GROUP BY 1

这里的缺点是查询结果的模式将由数据集中最近的 table 决定,这可能是个问题。但是,如果所有 table 都具有上述相同的架构,则可以工作