我找不到任何显示如何使用自定义字段为分区表编写JSON的示例。下面是一个如何指定按类型" DAY"分区的表的示例,但是如果我另外想要按特定字段进行分区 - JSON将如何显示?
{
"tableReference": {
"projectId": "bookstore-1382",
"datasetId": "exports",
"tableId": "partition"
},
"timePartitioning": {
"type": "DAY"
}
}
答案 0 :(得分:2)
看看API reference。 timePartitioning
对象当前支持以下属性:
expirationMs
field
requirePartitionFilter
type
我不会在这里复制/粘贴所有评论,但这就是它对field
所说的内容:
[Experimental] [可选]如果未设置,则表被分区 伪列' _PARTITIONTIME&#39 ;;如果设置,则表被分区 这个领域。该字段必须是顶级TIMESTAMP或DATE字段。它的 模式必须是NULLABLE或REQUIRED。
在您的情况下,有效负载看起来像:
{
"tableReference": {
"projectId": "<your project>",
"datasetId": "<your dataset>",
"tableId": "partition"
},
"timePartitioning": {
"type": "DAY",
"field": "<date_or_timestamp_column_name>"
}
}
或者,您可以使用标准SQL发出CREATE TABLE
DDL statement。举个例子:
#standardSQL
CREATE TABLE `your-project.your-dataset.table`
(
x INT64,
event_date DATE
)
PARTITION BY event_date;