Funkcja transform_keys

Dotyczy:zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime

Przekształca klucze na mapie expr przy użyciu funkcji func.

Składnia

transform_keys(expr, func)

Argumenty

  • expr: Wyrażenie MAP.
  • func: funkcja lambda.

Zwraca

Mapa, w której klucze mają typ wyniku funkcji lambda, a wartości mają typ expr wartości MAP.

Funkcja lambda musi mieć 2 parametry. Pierwszy parametr reprezentuje klucz. Drugi parametr reprezentuje wartość.

Funkcja lambda tworzy nowy klucz dla każdego wpisu na mapie.

Azure Databricks zgłasza DUPLICATED_MAP_KEY jeśli funkcja lambda generuje zduplikowane klucze.

Typowe warunki błędów

Przykłady

> SELECT transform_keys(map_from_arrays(array(1, 2, 3), array(1, 2, 3)), (k, v) -> k + 1);
 {2 -> 1, 3 -> 2, 4 -> 3}
> SELECT transform_keys(map_from_arrays(array(1, 2, 3), array(1, 2, 3)), (k, v) -> k + v);
 {2 -> 1, 4 -> 2, 6 -> 3}

-- The transform produces duplicate key 0 from both entries.
> SELECT transform_keys(map(1, 'a', 2, 'b'), (k, v) -> 0);
  Error: DUPLICATED_MAP_KEY