Espressione case

Si applica a:check marked yes Databricks SQL check marked yes Databricks Runtime

Restituisce resN per il primo optN oggetto uguale expr o def se nessuna corrisponde.

Restituisce resN per la prima condN valutazione su true o def se non è stato trovato alcun valore.

Sintassi

CASE expr {WHEN opt1 THEN res1} [...] [ELSE def] END
CASE {WHEN cond1 THEN res1} [...] [ELSE def] END

Argomenti

  • expr: qualsiasi espressione per cui viene definito il confronto.
  • optN: espressione con un tipo meno comune con expr e tutte le altre optN.
  • resN: qualsiasi espressione con un tipo meno comune con tutti gli altri resN e def.
  • def: espressione facoltativa con un tipo meno comune con tutti .resN
  • condN: espressione BOOLEAN.

Resi

Il tipo di risultato corrisponde al tipo meno comune di resN e def.

Se def viene omesso, il valore predefinito è NULL. Le condizioni vengono valutate in ordine e solo l'oggetto resN o def che restituisce il risultato viene eseguito.

Esempi

> SELECT CASE WHEN 1 > 0 THEN 1 WHEN 2 > 0 THEN 2.0 ELSE 1.2 END;
 1.0
> SELECT CASE WHEN 1 < 0 THEN 1 WHEN 2 > 0 THEN 2.0 ELSE 1.2 END;
 2.0
> SELECT CASE WHEN 1 < 0 THEN 1 WHEN 2 < 0 THEN 2.0 END;
 NULL
> SELECT CASE 3 WHEN 1 THEN 'A' WHEN 2 THEN 'B' WHEN 3 THEN 'C' END;
 C