Funkcja try_cast

Zwraca wartość rzutowania sourceExpr do typu targetType danych, jeśli to możliwe, lub wartość NULL, jeśli nie jest to możliwe.

Od:Databricks Runtime 10.0

Składnia

try_cast(sourceExpr AS targetType)

Argumenty

  • sourceExpr: Dowolne wyrażenie rzutowalne.
  • targetType: typ wyniku.

Zwraca

Wynik jest typu targetType.

Ta funkcja jest bardziej zrelaksowanym wariantem funkcji rzutowania , która zawiera szczegółowy opis.

try_cast różni się od funkcji rzutowania przez tolerowanie następujących warunków, o ile rzutowanie z typu expr do type jest obsługiwane:

  • sourceExpr Jeśli wartość nie może mieścić się w domenie targetType wyniku, NULL zamiast błędu przepełnienia.
  • sourceExpr Jeśli wartość nie jest dobrze sformułowana lub zawiera nieprawidłowe znaki, wynik jest NULL zamiast nieprawidłowego błędu danych.

Wyjątkiem od powyższych są:

  • Rzutowanie do pola STRUCT z właściwością NOT NULL .
  • Rzutowanie klucza MAP .

Przykłady

> SELECT try_cast('10' AS INT);
 10

> SELECT try_cast('a' AS INT);
 NULL