2016-07-09 4 views
1

が含まれます。BigQuery REPEATEDフィールドに特定の値が含まれているかどうかを確認する方法はありますか? COLUMN1が繰り返さモードの文字列型のフィールドがあるときBigQuery REPEATEDフィールドには、

SELECT CASE WHEN column1 CONTAINS ("Test Value") THEN 1 ELSE 0 END FROM testdata 

:私のような何かをしようとしている

。 私は同じ性質の複数の反復列を持っているので、それらをすべて平坦化することは退屈なようです。

答えて

4

てみ

SELECT 
    id_or_whatever_key_column_you_have, 
    SUM(CASE 
     WHEN column1 CONTAINS ("Test Value") THEN 1 
     ELSE 0 END 
    ) WITHIN RECORD AS matches 
FROM testdata 

の下に、私は実現 - あなたの例からのコピー/ペーストは、私は結果を失うことなく削除することができ、いくつかの余分を残しながら - あなたは真の一致かどうかを(持っている場合ので、それだけではなく/あなたに伝えます偽)ではなく、あなたは各レコード内の一致のカウント与える:

SELECT 
    id_or_whatever_key_column_you_have, 
    SUM(column1 CONTAINS ("Test Value")) WITHIN RECORD AS matches 
FROM testdata 

私はダニーの答えは私の心の中でこのトリガしたと思います。)Oを

3

あなたはを使用することができますこれを達成するために図10に示す。

SELECT SOME(column1 CONTAINS ("Test Value")) WITHIN RECORD FROM testdata 
関連する問題