google-bigquery - 向 BigQuery 架构添加一列 - 但不是在最后
问题描述
几个月前,可以通过以下方式更新 BigQuery 表的架构
- 通过以下方式倾倒它:
bq show --schema Dataset.table > table.json
- 然后更改架构并添加一列:
[
{
"name": "A",
"type": "STRING"
},
{
"name": "NEW_COLUMN",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "B",
"type": "STRING"
}
]
- 然后通过以下方式更新表:
bq update Dataset.table table.json
最后,该列将出现在表模式中的指定位置。今天我尝试在我们数据集中的现有表上执行此操作,并在最后添加列,就好像我会使用ALTER TABLE ... ADD COLUMN
语句一样。是否有可能恢复旧的行为?当我对上游表中使用的源表的架构更改几乎无法控制时,我经常使用它。
解决方案
似乎这是可能的,但从未得到官方支持。因此,从现在开始必须使用解决方法。
推荐阅读
- python - Pipelines→GridSearchCV(estimator = pipelines['key'] ..doen`t work. 为什么?
- oracle - PL/SQL - 在存储在变量中的 for 循环中传递查询
- http - 通过在 URL 中传递值来提交值并启动搜索
- python - 从 DataFrame 创建直方图(其中索引值是变量)
- php - 如何通过 PHP 调用云函数
- scala - Scala 错误:对象 XML 不是 Apache Spark 上包 org.json 的成员
- android - ANDROID STUDIO 相机配置和按键映射
- spring - 为什么执行插入语句时 OneToMany JPA 关联失败
- airflow - 我可以在气流中使用 python def 吗?或者这不是很好的做法?
- apollo - 如何使用 apollo 缓存来匹配作为子数组/子 ID 列表的输入变量?