BigQuery将子查询应用于分区时间

我有两个可以单独正确运行的查询,但在一起有一个错误:

WITH minimum_time AS 
(
    SELECT DATE (min(_PARTITIONTIME)) AS minimums
    FROM `Day`
    WHERE DATE (_PARTITIONTIME) = "2020-11-20"
)
SELECT *
FROM `Day`
WHERE DATE (_PARTITIONTIME) > (SELECT minimums
                               FROM minimum_time)

我得到这个错误:

无法查询表“ Day”,而无需对可用于消除分区的列“ _PARTITION_LOAD_TIME”,“ _ PARTITIONDATE”,“ _ PARTITIONTIME”进行过滤

我不太明白为什么会这样,首先查询返回一个日期。

Yun Zhang

您收到此错误是因为:

  1. 该表具有以下选项集:require_partition_filter = true,如果未指定分区过滤器,则对该表的查询应失败。
  2. 使用子查询作为分区过滤器存在限制,此处记录了限制

通常,当可以在查询开始时就对过滤器进行评估而无需任何子查询评估或数据扫描时,分区修剪将减少查询成本。

解决方法是使用BigQuery脚本来预先确定分区过滤器,例如:

DECLARE minimums DATE DEFAULT ((SELECT minimums FROM `Day` WHERE ...));
SELECT *
FROM `Day`
WHERE DATE (_PARTITIONTIME) > minimums; -- minimums is a constant to the second query

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将整个查询的where子句也应用于子查询?

来自分类Dev

如何将整个查询的where子句也应用于子查询?

来自分类Dev

Oracle Query Optimizer是否将顶级where子句应用于子查询或视图?

来自分类Dev

MongoDB查询-仅在字段存在时将条件应用于子字段

来自分类Dev

将子分组应用于 R 中的子组

来自分类Dev

仅将事件应用于指向的元素,而不应用于其子元素

来自分类Dev

将CSS动画应用于特定元素,而不应用于其子元素

来自分类Dev

将分析权重应用于时间序列数据

来自分类Dev

将分组规则应用于时间序列?

来自分类Dev

将限制应用于XML模式中的时间属性

来自分类Dev

将函数应用于R中的时间序列的多行

来自分类Dev

在更少的时间里将命令应用于当前行?

来自分类Dev

将分组规则应用于时间序列?

来自分类Dev

将任意排序应用于Django ORM查询集

来自分类Dev

如何知道是否将OrderBy应用于查询?

来自分类Dev

将动态查询应用于坛形图

来自分类Dev

MySQL将“ ORDER BY”子句应用于UNION查询

来自分类Dev

将模板应用于控件和子级

来自分类Dev

将动词应用于子数组,到位?

来自分类Dev

将背景图像应用于垂直子菜单

来自分类Dev

将CSS样式应用于子菜单

来自分类Dev

将父鼠标事件应用于子元素

来自分类Dev

MakeStyles(材料UI)将样式应用于子元素

来自分类Dev

将CSS样式应用于子节点

来自分类Dev

将背景图像应用于垂直子菜单

来自分类Dev

将CSS样式应用于父类的子元素

来自分类Dev

避免将CSS应用于子列表项

来自分类Dev

无法将模板应用于子元素

来自分类Dev

WPF将样式应用于用户控件的子控件

Related 相关文章

热门标签

归档