在我发现的官方最佳实践中:
按日期对表进行分区并查询相关分区;例如 WHERE _PARTITIONDATE="2017-01-01" 只扫描 2017 年 1 月 1 日的分区
我开始使用_PARTITIONDATE伪列了很多,因为我觉得它更容易编写查询这样,在对比的_PARTITIONTIME列和应用TIMESTAMP()功能到我的约会,像显示在这个例子:
WHERE _PARTITIONTIME = TIMESTAMP('2016-03-28')
我想知道我是否应该继续使用_PARTITIONDATE- 因为我找不到关于它的更多文档。此外,与此相反,_PARTITIONTIME它不会在基于网络的 BigQuery SQL 编辑器中突出显示语法。
是有利于官方的方式_PARTITIONTIME过_PARTTIONDATE?
_PARTITIONDATE没有记录,因为它与已发布的功能不对应。_PARTITIONTIME除非我们在发行说明中宣布新功能,否则您应该使用。
WHERE _PARTITIONTIME = TIMESTAMP('2016-03-28')
Run Code Online (Sandbox Code Playgroud)
完全一样
WHERE _PARTITIONTIME = '2016-03-28'
Run Code Online (Sandbox Code Playgroud)
该_PARTITIONTIME列是一个时间戳,因此后一个示例右侧的字符串文字被强制转换为时间戳。在语法高亮方面,当前的 UI 在识别内置函数方面存在一些限制,但预计即将进行的 UI 更新会解决这个问题。
| 归档时间: |
|
| 查看次数: |
7787 次 |
| 最近记录: |