Zum Inhalt springen

Wendet mit einem Lambda-Ausdruck eine Transformation auf jeden Wert einer Map an.

MAP_TRANSFORM_VALUES(<map>, (<key>, <value>) -> <value_transformation>)

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

Dieses Beispiel senkt den Preis jedes Produkts um 10 %, während die Produkt-IDs (Schlüssel) unverändert bleiben:

SELECT MAP_TRANSFORM_VALUES({101: 100.0, 102: 150.0, 103: 200.0}, (product_id, price) -> price * 0.9) AS discounted_prices;
┌───────────────────────────────────┐
│ discounted_prices │
├───────────────────────────────────┤
│ {101:90.00,102:135.00,103:180.00} │
└───────────────────────────────────┘