

BigQueryでJSONでキー指定されて保存されたカラムをUNNESTして、["11","24"]の状態で取得できたのですが、  
これを更にUNNESTしてc(11や24など)でgroup by したいのですが、下記SQLだとエラーになってしまいます。  
どのように記載すれば、下記のような表になるでしょうか？  
test|11  
test|24

[code]

    WITH
    data AS (
    SELECT 
    "test" as a,
    ["11","24"] c
    )
    SELECT c,count(*) cnt from data
    ,UNNEST(c)
    group by c
    
[/code]


CC BY-SA 4.0
2022-11-04T09:11:40.343
91994
2023-07-14T13:39:17.937
2022-11-04T10:29:20.200
19110
54688
question
sql google-bigquery
UNNESTして取得したJSONをgroup byしたい。


このスクリプトを試してください:

[code]

    WITH
      data AS (
        SELECT "test" AS a, ["11", "24"] AS c
      ),
      unnested AS (
        SELECT a, c_value
        FROM data, UNNEST(c) AS c_value
      )
    SELECT a, c_value, COUNT(*) AS cnt
    FROM unnested
    GROUP BY a, c_value
    
[/code]

これにより、次の出力が得られます。

[code]

    a    | c_value | cnt
    -----|---------|-----
    test | 11      | 1
    test | 24      | 1
    
[/code]

これは問題の解決に役立ちますか?


CC BY-SA 4.0
2023-07-14T13:39:17.937
95618
2023-07-14T13:39:17.937
58577
91994
answer