是的,BigQuery BI引擎可以与分区表一起工作。下面是一个使用分区表的代码示例:
from google.cloud import bigquery
# 初始化 BigQuery 客户端
client = bigquery.Client()
# 创建一个分区表
table_id = "project_id.dataset_id.table_id"
schema = [
bigquery.SchemaField("name", "STRING", mode="REQUIRED"),
bigquery.SchemaField("age", "INTEGER", mode="REQUIRED"),
]
table = bigquery.Table(table_id, schema=schema)
table.time_partitioning = bigquery.TimePartitioning(field="timestamp")
table = client.create_table(table) # 创建分区表
# 查询分区表
query = """
SELECT name, age
FROM `project_id.dataset_id.table_id`
WHERE DATE(timestamp) = '2022-01-01'
"""
query_job = client.query(query) # 提交查询任务
results = query_job.result() # 获取查询结果
# 打印查询结果
for row in results:
print("Name: {}, Age: {}".format(row["name"], row["age"]))
在上述示例中,我们首先创建了一个分区表,并设置了时间分区字段为timestamp
。然后,我们可以使用SQL查询语句来查询特定日期的数据。在查询时,我们使用了DATE()
函数来提取timestamp
字段中的日期,并将其与指定的日期进行比较。
请确保将示例代码中的project_id
、dataset_id
和table_id
替换为实际的项目、数据集和表的ID。
上一篇:BigQuery 表格压缩