Aller au contenu

Filtre les paires clé-valeur d’un objet JSON selon une condition donnée, définie à l’aide d’une expression lambda.

JSON_MAP_FILTER(<json_object>, (<key>, <value>) -> <condition>)

Renvoie un objet JSON ne contenant que les paires clé-valeur qui satisfont la condition spécifiée.

Cet exemple extrait uniquement la paire clé-valeur "status": "active" de l’objet JSON et écarte les autres champs :

SELECT JSON_MAP_FILTER('{"status":"active", "user":"admin", "time":"2024-11-01"}'::VARIANT, (k, v) -> k = 'status') AS filtered_metadata;
┌─────────────────────┐
│ filtered_metadata │
├─────────────────────┤
│ {"status":"active"} │
└─────────────────────┘