将一个嵌套 table 插入 BQ 到另一个不同的嵌套 table
Insert into BQ one nested table into another different nested table
我正在尝试将一个嵌套的 BigQuery table 复制到另一个嵌套的 table 中,然后 运行 出现以下错误查询列 2 的类型为 ARRAY>,其类型为 STRUCT
查询:
INSERT INTO `<GCP_PROJECT_NAME>.Test_Tables.Nested_Person_Table2`
(cinema,
director.movie.Name,
director.movie.Budget)
SELECT
cinema,
movie.Name,
movie.Budget
FROM
`<GCP_PROJECT_NAME>.Dataset.Table`
您不能插入部分结构。您需要在您的 BigQuery table 中提供完整的结构(这将在未来使用新的 JSON 友好引擎进行更改)
INSERT INTO `<GCP_PROJECT_NAME>.Test_Tables.Nested_Person_Table2`
(cinema,
director)
SELECT
cinema,
STRUCT(movie as director)
FROM
`<GCP_PROJECT_NAME>.Dataset.Table`
EDIT1
您不能插入部分数据。您需要在每一行中插入完整的对象
INSERT INTO `<GCP_PROJECT_NAME>.Test_Tables.Nested_Person_Table2`
(cinema,
director)
SELECT
cinema,
STRUCT([STRUCT(mo.Name as Name, mo.Budget as Budget)] as movie, "" as language, "" as English, "" as other, STRUCT("","") as source) as director
FROM
`<GCP_PROJECT_NAME>.Dataset.Table`, UNNEST(movie) as mo
PS: 语言不应该是你的目标 table 中包含英语和其他内容的记录?
我正在尝试将一个嵌套的 BigQuery table 复制到另一个嵌套的 table 中,然后 运行 出现以下错误查询列 2 的类型为 ARRAY
查询:INSERT INTO `<GCP_PROJECT_NAME>.Test_Tables.Nested_Person_Table2`
(cinema,
director.movie.Name,
director.movie.Budget)
SELECT
cinema,
movie.Name,
movie.Budget
FROM
`<GCP_PROJECT_NAME>.Dataset.Table`
您不能插入部分结构。您需要在您的 BigQuery table 中提供完整的结构(这将在未来使用新的 JSON 友好引擎进行更改)
INSERT INTO `<GCP_PROJECT_NAME>.Test_Tables.Nested_Person_Table2`
(cinema,
director)
SELECT
cinema,
STRUCT(movie as director)
FROM
`<GCP_PROJECT_NAME>.Dataset.Table`
EDIT1
您不能插入部分数据。您需要在每一行中插入完整的对象
INSERT INTO `<GCP_PROJECT_NAME>.Test_Tables.Nested_Person_Table2`
(cinema,
director)
SELECT
cinema,
STRUCT([STRUCT(mo.Name as Name, mo.Budget as Budget)] as movie, "" as language, "" as English, "" as other, STRUCT("","") as source) as director
FROM
`<GCP_PROJECT_NAME>.Dataset.Table`, UNNEST(movie) as mo
PS: 语言不应该是你的目标 table 中包含英语和其他内容的记录?