代码之家  ›  专栏  ›  技术社区  ›  netskink

如何在Google云平台上对bigquery中的一个表进行多次更新?

  •  0
  • netskink  · 技术社区  · 6 年前

    我想重写我所拥有的表中文本列的值。特定字段包含“cat”、“dog”、“mouse”等条目。我希望将此字段中的值重写为“dog”或“not_a_dog”

    目前我有一个带有注释部分的查询。我取消评论一行,运行它。评论它,然后取消评论下一行,运行它。等.

    我相信有一种方法可以通过编程实现这一点。

    以下是我迄今为止所做的工作:

    UPDATE some_dataset.some_table SET label='not_a_dog' WHERE label='cat'
    #UPDATE some_dataset.some_table SET label='not_a_dog' WHERE label='mouse'
    #UPDATE some_dataset.some_table SET label='not_a_dog' WHERE label='moose'
    

    注意,我在bigquery中使用的是标准SQL。我尝试使用存储过程,但我不确定失败是因为我不知道存储过程,还是因为它们与Google云平台上BigQuery中的标准SQL不兼容。

    1 回复  |  直到 6 年前
        1
  •  3
  •   Elliott Brossard    6 年前

    UPDATE some_dataset.some_table
    SET label='not_a_dog' WHERE label IN ('cat', 'mouse', 'moose')