BigQuery Table 列
BigQuery Table Column
我有以下json
{attribute_values=[{key=PO, values=[234234, 21]}, {key=POReceipt, values=[ABC]}]}
How i will define attribute_values Column?
目前我定义为字符串并在通过数据流插入时出错
"errorMessage": "{\n \"errors\" : [ {\n \"debugInfo\" : \"\",\n \"location\" : \"attribute_values\",\n \"message\" : \"Array specified for non-repeated field.\",\n \"reason\" : \"invalid\"\n } ],\n \"index\" : 0\n}",
"stacktrace": null
}
How I will define attribute_values Column?
您可以按如下方式创建 table:
-- create table
CREATE TABLE IF NOT EXISTS `projectId.datasetId.tableName`
(
attribute_values STRUCT <key String, values ARRAY<STRING>>
)
您可以使用下面的 INSERT
sql 示例来测试如何填充您的 table
INSERT INTO
`projectId.datasetId.tableName` (attribute_values)
values (
STRUCT <key String, values ARRAY<STRING>>('PO', ['234234', '21'])
);
INSERT INTO
`projectId.datasetId.tableName` (attribute_values)
values (
STRUCT <key String, values ARRAY<STRING>>('POReceipt', ['ABC'])
);
要通过代码执行此操作,您可以查看此 了解更多详细信息。
您有一个 BQ table,列 attribute_value 的数据类型为字符串,现在您想更改该列的数据类型。有2个选项可供选择
- 使用查询,选择 table 中的所有列,然后转换要更改的列,然后将其写入目标 table(尽管转换不允许您转换从字符串到 array/struct Casting)
- 导出您的数据(到 GCS)然后将其加载到新的 table
请查看此文档Changing a column data type了解更多详情
我有以下json
{attribute_values=[{key=PO, values=[234234, 21]}, {key=POReceipt, values=[ABC]}]}
How i will define attribute_values Column?
目前我定义为字符串并在通过数据流插入时出错
"errorMessage": "{\n \"errors\" : [ {\n \"debugInfo\" : \"\",\n \"location\" : \"attribute_values\",\n \"message\" : \"Array specified for non-repeated field.\",\n \"reason\" : \"invalid\"\n } ],\n \"index\" : 0\n}",
"stacktrace": null
}
How I will define attribute_values Column?
您可以按如下方式创建 table:
-- create table
CREATE TABLE IF NOT EXISTS `projectId.datasetId.tableName`
(
attribute_values STRUCT <key String, values ARRAY<STRING>>
)
您可以使用下面的 INSERT
sql 示例来测试如何填充您的 table
INSERT INTO
`projectId.datasetId.tableName` (attribute_values)
values (
STRUCT <key String, values ARRAY<STRING>>('PO', ['234234', '21'])
);
INSERT INTO
`projectId.datasetId.tableName` (attribute_values)
values (
STRUCT <key String, values ARRAY<STRING>>('POReceipt', ['ABC'])
);
要通过代码执行此操作,您可以查看此
您有一个 BQ table,列 attribute_value 的数据类型为字符串,现在您想更改该列的数据类型。有2个选项可供选择
- 使用查询,选择 table 中的所有列,然后转换要更改的列,然后将其写入目标 table(尽管转换不允许您转换从字符串到 array/struct Casting)
- 导出您的数据(到 GCS)然后将其加载到新的 table
请查看此文档Changing a column data type了解更多详情