昨天我问过this question,我试图在标准SQL中编写遗留视图。
我的桌子是
FROM [myProject.Mydataset.ga_sessions_20171129]
ga_sessions_20171129是我的表格ID,其名称的最后一部分显示了表格更新的最后日期,因此第二天的下一个表格将是20171130
我们每天都使用此代码更新表格
FROM `project.dataset.ga_sessions_*`
WHERE _TABLE_SUFFIX = FORMAT_DATE('%Y%m%d', CURRENT_DATE())
但它没有奏效并给了我这个错误:
无法保存视图。无法通过前缀查询视图。局部 匹配视图的列表是:...
后来,我们认为因为我们有一些类似于ga_sessions_S_20171129的表格,它引起了一些混乱,然后我们尝试了这个
FROM `project.dataset.ga_sessions_20*` where _TABLE_SUFFIX = FORMAT_DATE('%y%m%d', CURRENT_DATE())
它仍然无法运作。有没有人对此有所了解?
答案 0 :(得分:1)
我看到的唯一解释是,在同一数据集中,您的视图与其他表具有相同的前缀 - 即project.dataset.ga_sessions_*
但通配符表不支持视图。如果通配符表与数据集中的任何视图匹配,则查询将返回错误
对于通配符表
,还有更多limitations