Google BigQuery:如何使用SQL创建新列

scr*_*www 3 sql google-bigquery

我想在不使用旧版SQL的情况下向现有表中添加一列。

基本的SQL语法是:

ALTER TABLE table_name
ADD column_name datatype;
Run Code Online (Sandbox Code Playgroud)

我格式化了Google BigQuery的查询:

ALTER TABLE `projectID.datasetID.fooTable`
ADD (barColumn date);
Run Code Online (Sandbox Code Playgroud)

但是,此错误的语法不正确:

Error: Syntax error: Expected "." or keyword SET but got identifier "ADD" at [1:63]
Run Code Online (Sandbox Code Playgroud)

那么,如何为Google BigQuery正确格式化SQL?

Jef*_*kas 12

ALTER TABLE ADD COLUMN根据BigQuery 发行说明于 2020 年 10 月 14 日发布了对 的支持。

因此,最初提出的声明现在应该进行最少的修改:

ALTER TABLE `projectID.datasetID.fooTable`
ADD COLUMN barColumn DATE;
Run Code Online (Sandbox Code Playgroud)


Ell*_*ard 5

BigQuery不支持ALTER TABLE或其他DDL语句,但是您可以考虑提交功能请求。现在,您需要在BigQuery UI中的表中打开,然后使用“添加新字段”按钮添加列,或者,如果您使用的是API,则可以使用tables.update

  • 可以在 [修改表架构](https://cloud.google.com/bigquery/docs/managing-table-schemas) 页面上找到使用 API 添加列的说明。 (2认同)