Przejdź do głównej zawartości

Stosuje przekształcenie do każdej wartości w obiekcie JSON za pomocą wyrażenia lambda.

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

Zwraca obiekt JSON z tymi samymi kluczami co wejściowy obiekt JSON, ale z wartościami zmodyfikowanymi zgodnie z podanym przekształceniem lambda.

Ten przykład dopisuje „ - Special Offer” do opisu każdego produktu:

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"} │
└──────────────────────────────────────────────────────────────────────────┘