1

我刚刚检查了 Web UI,创建了一个空表,所有暴露的数据类型都是旧的 SQL 数据类型。然后我检查了bq mk,我看不到任何设置标准 SQL 标志的选项。

更奇怪的是,如果我使用标准 SQL 数据类型创建表,

bq mk --schema name:string,value:int64 -t test.newtable5
Table 'oandmpoc:test.newtable5' successfully created.

它创建了一个带有 的表value INTEGER,稍后我将深入研究 ARRAY 和 STRUCT 数据类型的行为。有什么明显的我失踪了吗?

4

1 回答 1

1

BigQuery 不会以不同方式存储旧版 SQL 和标准 SQL 的表。INTEGER是该INT64类型的旧 SQL 别名。同样,RECORD是 的别名STRUCT。您会注意到,旧版 SQL 数据类型参考具有用于DATETIME和的条目,DATETIME尽管这些条目在标准 SQL 中最有用。

有关哪些遗留 SQL 类型映射到哪些标准 SQL 类型的更多信息,请参见从遗留 SQL 文档页面迁移

于 2018-01-26T17:51:40.697 回答