在 Google Bigquery 中创建表 SQL 语法

Alt*_*ime 7 google-bigquery

我一直在阅读bigquery 文档自昨晚深夜以来,,但对其了解甚少。它讨论了通过不同的方法加载数据,但没有说明如何创建我要将数据加载到的表。当我使用 Web UI 时,它希望我输入架构。我的表有 400 多列。我不会输入数百个列名、类型和长度。

我一直在以 csv 格式将数百 GB 的数据上传到谷歌存储桶。csv 文件没有列名。我有我更喜欢使用的 sql 格式的模式。

如果我尝试通过查询创建一个表,我会在第 2 行收到一个错误,提示:

"Error: Encountered "" at line 2, column 1."

CREATE TABLE [example-mdi:myData_1.ST] (
`ADDRESS_ID` varchar(9),
`INDIVIDUAL_ID` varchar(2),
`FIRST_NAME` varchar(25),
`LAST_NAME` varchar(2),...
Run Code Online (Sandbox Code Playgroud)

我该怎么做或正确的方法是什么?

Ell*_*ard 13

您可以使用CREATE TABLE语句来使用标准 SQL 创建表。在您的情况下,该语句将如下所示:

CREATE TABLE `example-mdi.myData_1.ST` (
  `ADDRESS_ID` STRING,
  `INDIVIDUAL_ID` STRING,
  `FIRST_NAME` STRING,
  `LAST_NAME` STRING,
  ...
);
Run Code Online (Sandbox Code Playgroud)

  • “CREATE TABLE”今天刚刚发布。我添加这个作为答案,以防其他人遇到这个问题。 (2认同)

Mik*_*ant 2

当您在 Web UI 中创建表时 - 您可以逐个字段输入架构(Edit as Fields模式 - 默认模式),也可以以文本形式输入架构(Edit as Text模式)
因此,如果您已经拥有 sql 格式的架构,则可以使用它(您可能需要稍微调整它以符合 BigQuery)

查看有关使用不同客户端创建表的更多信息(在 We bUI 部分中,上面的选项未呈现,所以我认为这就是您错过它的原因)

PS 截至今天,BigQuery 不支持 DDL - 因此CREATE TABLE不可用

更新

截至今天 - 2018 年 1 月 17 日 - BigQuerydata definition language支持现已推出Beta