gpt4 book ai didi

google-bigquery - 为什么 BigQuery 没有删除列的选项?

转载 作者:行者123 更新时间:2023-12-04 23:38:49 27 4
gpt4 key购买 nike

我正在寻找从 BigQuery 表中删除列的选项,例如 ALTER TABLE TABLE_NAME DROP COLUMN_NAME - 但我在网上找到的只是,删除旧表并创建一个新表。

我只是想知道,在 BigQuery 中没有这个选项有什么合乎逻辑的原因吗?

最佳答案

删除一列意味着从所有 Capacitor files 中删除数据组成表,这是一项昂贵的操作。如果 BigQuery 只是删除与列相关的元数据,您将需要为无法实际查询的虚拟列支付存储费用,这并不理想。

相反,当您添加列时,BigQuery 会将过去文件中缺失的列视为包含所有 NULL值,这不需要修改它们。

删除列有几个不同的选项:

  • 从原始表中选择,排除您不想保留的列。然后复制结果表并覆盖原始表。
  • 在包含所需列的表上创建逻辑 View 。现在查询逻辑 View 而不是表——您还可以进行其他“修改”,例如强制转换或过滤,而无需接触基础表。缺点是您将需要为您不再需要查询的旧列付费。
  • 关于google-bigquery - 为什么 BigQuery 没有删除列的选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45816344/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com