JSON_MAP_FILTER (Lakehouse v1)
ラムダ式で定義した条件に基づいて、JSONオブジェクトのキーと値のペアをフィルターします。
JSON_MAP_FILTER(<json_object>, (<key>, <value>) -> <condition>)指定した条件を満たすキーと値のペアだけを含むJSONオブジェクトを返します。
次の例では、JSONオブジェクトから "status": "active" のキーと値のペアだけを抽出し、他のフィールドを除外します。
SELECT JSON_MAP_FILTER('{"status":"active", "user":"admin", "time":"2024-11-01"}'::VARIANT, (k, v) -> k = 'status') AS filtered_metadata;
┌─────────────────────┐│ filtered_metadata │├─────────────────────┤│ {"status":"active"} │└─────────────────────┘