述語条件に基づいてmap inputの要素をフィルター処理します。
構文
map<K, V> map_filter(map<K, V> <input>, function <K, V, boolean> <predicate>)パラメーター
input: 必須です。 MAPタイプの値。
map<K, V>のKとVは、マップのキーと値を指定します。述語: 必須です。 このパラメーターには、マップ内の要素をフィルター処理するために使用される組み込み関数、ユーザー定義関数、または式を指定します。 述語条件は、入力中のキーおよび値に対応する2つの入力パラメータからなる。 出力結果はBOOLEANタイプです。
戻り値
MAPタイプの値が返されます。
例
-- The return value is {-30:100, 20:50}.
select map_filter(map(10, -20, 20, 50, -30, 100, 21, null), (k, v) -> (k+v) > 10);説明
この例では、ハイフンとクロージングアングルブラケット (->) の組み合わせが使用されます。 Lambda関数でハイフンとクロージングアングルブラケット (->) の組み合わせを使用する方法の詳細については、「Lambda関数」をご参照ください。
関連関数
MAP_FILTERは複合型関数です。 ARRAY、MAP、STRUCT、JSONなどの複雑なデータ型のデータを処理するために使用される関数の詳細については、複合型関数.