Pular para o conteúdo

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

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

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

Este exemplo reduz em 10% o preço de cada produto, enquanto os IDs dos produtos (chaves) permanecem inalterados:

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