Zum Inhalt springen

Wendet mit einem Lambda-Ausdruck eine Transformation auf jeden Schlüssel einer Map an.

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

Gibt eine Map mit denselben Werten wie die Eingabe-Map zurück, deren Schlüssel jedoch gemäß der angegebenen Lambda-Transformation geändert wurden.

Dieses Beispiel addiert 1.000 zu jeder Produkt-ID und erstellt so eine neue Map mit aktualisierten Schlüsseln, wobei die zugehörigen Preise gleich bleiben:

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