google-bigquery - 将 BigQuery DDL 中的变量与外部 GCS 存储桶一起使用
问题描述
仅使用 BigQuery 数据定义语言和标准 SQL,是否可以将当前日期用作变量以将其用作gs://
以下查询中的路径?
CREATE OR REPLACE EXTERNAL TABLE staging.my_table
OPTIONS (
format = 'NEWLINE_DELIMITED_JSON',
uris = ['gs://bucket/path/to/logs/2020-10-08/*.jsonl']
)
解决方案
EXECUTE IMMEDIATE format("""
CREATE OR REPLACE EXTERNAL TABLE staging.my_table
OPTIONS (
format = 'NEWLINE_DELIMITED_JSON',
uris = ['gs://bucket/path/to/%s/*.jsonl']
)
""", CAST(CURRENT_DATE() AS STRING));
最佳实践是在 GCS 上使用Hive 分区
推荐阅读
- flutter - 如何在颤动中使用带有 Bloc 的冷冻包?
- android - Android edittext 视图在文本输入时被修剪
- reactjs - 面临错误:输入是一个空元素标签,既不能有 `children`,也不能使用 `dangerouslySetInnerHTML`。在创建一个简单的表单时
- angular - 从源“http://localhost:4200”访问“https://exam.com/api/Uni/GetAll”的 XMLHttpRequest 已被 CORS 策略阻止
- java - 在 Java SWT GUI 中显示 Excel 文件的内容
- php - PHP Klein 未捕获错误:错误的参数
- azure-resource-manager - ARM 模板 - 在两个嵌套模板之间创建依赖关系
- android - 如何确保在多次按下按钮后仅打开一次活动
- php - 注册后,当我转到主页时出现错误 - “尝试获取非对象的属性 'blog_name'”
- python - 如何在类中获取和使用实例变量?