Pular para o conteúdo

Aplica uma transformação a cada valor de um objeto JSON usando uma expressão lambda.

JSON_MAP_TRANSFORM_VALUES(<json_object>, (<key>, <value>) -> <value_transformation>)

Retorna um objeto JSON com as mesmas chaves do objeto JSON de entrada, mas com os valores modificados de acordo com a transformação lambda especificada.

Este exemplo acrescenta “ - Special Offer” à descrição de cada produto:

SELECT JSON_MAP_TRANSFORM_VALUES('{"product1":"laptop", "product2":"phone"}'::VARIANT, (k, v) -> CONCAT(v, ' - Special Offer')) AS promo_descriptions;
┌──────────────────────────────────────────────────────────────────────────┐
│ promo_descriptions │
├──────────────────────────────────────────────────────────────────────────┤
│ {"product1":"laptop - Special Offer","product2":"phone - Special Offer"} │
└──────────────────────────────────────────────────────────────────────────┘