Pular para o conteúdo

Filtra pares chave-valor de um objeto JSON com base em uma condição especificada, definida por meio de uma expressão lambda.

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

Retorna um objeto JSON somente com os pares chave-valor que satisfazem a condição especificada.

Este exemplo extrai apenas o par chave-valor "status": "active" do objeto JSON, filtrando os demais campos:

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