代码之家  ›  专栏  ›  技术社区  ›  Saravana Kumar

是否将值插入结构列?

  •  0
  • Saravana Kumar  · 技术社区  · 1 年前

    我在bigquery中有一个表,它有两列id和struct列详细信息(记录,重复)。 其具有两个嵌套字段name(string)、range(string)。

    尝试了以下查询以插入值。

    insert into table
    values(101,struct(array(['Marie','Jonas']),['High','Low']))
    

    未能加载记录。语法本身是错误的。

    我应该能够像通过array_agg(struct())函数一样插入值。我的预期输出是

    id    details.name   details.range
    ____  ___________    _____________
    101   Marie          High
          Jonas          Low
    

    如果我能在这方面得到一些帮助,我将不胜感激。

    0 回复  |  直到 1 年前
        1
  •  0
  •   kiran mathew    1 年前

    对于您的要求,您可以考虑以下查询:

    INSERT INTO my-project.my-dataset.my-table(Details) values(struct('maria' ,'high')),(struct('Jonas' ,'Low'))
    

    结果:

    image

    有关更多信息,请参阅 link1 , link2 link3

    更新

    查询:

    INSERT INTO my-project.databset.table values(101,[('maria','High'),('Jonas','Low')])
    

    结果:

    image