【问题标题】:Finding length of array from a Array从数组中查找数组的长度
【发布时间】:2019-12-16 17:48:21
【问题描述】:

我在名为 emailed_user 的列中有如下给出的数组字段

[xyz@zar.com,eng@gmail.com,sahara@gamil.com,rashmi@google.com]

我想查找数组中元素的数量。

上面的代码我已经写好了 ARRAY_LENGTH(SPLIT(emailed_users),",") as Number_of_items2

我收到错误没有为参数类型的函数 SPLIT 匹配的签名:ARRAY。 支持的签名:SPLIT(STRING, [STRING]);拆分(字节,字节) 请你帮助我好吗。可以在standardsql中给出答案 我正在使用 Googlesql

【问题讨论】:

    标签: sql arrays google-bigquery


    【解决方案1】:

    你应该在下面使用

    ARRAY_LENGTH(emailed_users) as Number_of_items2   
    

    如您所见 - 您不需要 SPLIT,因为您的 emailed_users 字段已经是 ARRAY 类型

    下面快速测试

    #standardSQL
    WITH `project.dataset.table` AS (
      SELECT ['xyz@zar.com','eng@gmail.com','sahara@gamil.com','rashmi@google.com'] emailed_users
    )
    SELECT ARRAY_LENGTH(emailed_users) AS Number_of_items2  
    FROM `project.dataset.table`   
    

    结果

    Row Number_of_items2     
    1   4    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-17
      • 2012-09-12
      相关资源
      最近更新 更多