Google bigquery 当小表包含分区列的空值时,使用分区筛选器将小表合并到大表中

Google bigquery 当小表包含分区列的空值时,使用分区筛选器将小表合并到大表中,google-bigquery,Google Bigquery,要求: 要求将一个小表合并为一个非常大的表 这张大桌子是分区的 这个小表在分区列中可以有空值 分区列可以是任何受支持的数据类型 (数字/日期/时间/日期时间/时间戳) 示例表定义: 小表格:创建表格myproj.sampleds.tinytable(id数字、文本字符串、createdate日期) 大表:按createdate创建表myproj.sampleds.largetable(id数字、文本字符串、createdate日期)分区 我尝试了以下方法: 从小表中获取分区列的所有不同值

要求:

  • 要求将一个小表合并为一个非常大的表
  • 这张大桌子是分区的
  • 这个小表在分区列中可以有空值
  • 分区列可以是任何受支持的数据类型 (数字/日期/时间/日期时间/时间戳)
示例表定义:

小表格:创建表格
myproj.sampleds.tinytable
(id数字、文本字符串、createdate日期)

大表:按createdate创建表
myproj.sampleds.largetable
(id数字、文本字符串、createdate日期)分区

我尝试了以下方法:

  • 从小表中获取分区列的所有不同值

  • 使用这些不同值在合并查询中使用筛选条件

    声明uu distinctValues数组 默认值(从
    myproj.sampleds.tinytable
    中选择数组_AGG(不同的createdate))

    合并
    myproj.sampleds.largetable
    T 使用
    myproj.sampleds.tinytable
    S

    在T.id=S.id上

    和T.createdate在UNNEST中(\u distinctValue)

    当匹配时

我当前方法的问题是,当微小的表在分区列中有空值时,脚本会失败,错误是“数组不能有空值”

是否有其他方法将包含null的不同值收集到数组中

如果没有,是否有其他技术/方法将小表(具有空值)合并到大分区表中