Aller au contenu

Applique une transformation à chaque clé d’un map à l’aide d’une expression lambda.

MAP_TRANSFORM_KEYS(<map>, (<key>, <value>) -> <key_transformation>)

Renvoie un map ayant les mêmes valeurs que le map en entrée, mais dont les clés sont modifiées selon la transformation lambda indiquée.

Cet exemple ajoute 1 000 à chaque identifiant de produit et crée ainsi un nouveau map aux clés mises à jour, en conservant les mêmes prix :

SELECT MAP_TRANSFORM_KEYS({101: 29.99, 102: 45.50, 103: 15.00}, (product_id, price) -> product_id + 1000) AS updated_product_ids;
┌────────────────────────────────────┐
│ updated_product_ids │
├────────────────────────────────────┤
│ {1101:29.99,1102:45.50,1103:15.00} │
└────────────────────────────────────┘