【问题标题】:BigQuery updating regular field with record fieldBigQuery 使用记录字段更新常规字段
【发布时间】:2021-03-06 22:07:56
【问题描述】:

我有一张表,其中包含很少的常规字段和一个重复的记录字段: batch_number<INT64>, data array(start_date<DATE>, end_date<DATE>, ...)。我正在尝试根据嵌套字段中的条件更新 batch_number 字段。但我的更新更改了表中的所有行:

UPDATE ds.table as t
SET batch_number = 2
FROM ds.table i, UNNEST(data) as u
WHERE u.start_date = '2021-03-04'

为什么会这样?就我而言,什么是正确的语法?谢谢!

【问题讨论】:

    标签: arrays google-bigquery nested


    【解决方案1】:

    你可以试试下面的SQL:-

    UPDATE ds.table 
    SET batch_number = 2 
    WHERE '2021-03-04' IN (SELECT start_date FROM UNNEST(data)) 
    

    【讨论】:

    • 谢谢你,这就是我要找的!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-28
    • 2013-03-20
    • 1970-01-01
    • 2016-06-03
    • 2012-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多