Non è possibile utilizzare case
come controllo di flusso. Un case
SQL è un'espressione che restituisce un valore scalare in base alle condizioni.
È ben documentato in osservazioni
sezione:
Un codice funzionante verrebbe scritto in questo modo:
DECLARE @UNITY VARCHAR(5)
DECLARE @AUX VARCHAR(5)
SET @AUX =
CASE @UNITY
WHEN 'U1' THEN 'M1'
WHEN 'U2' THEN 'M2'
WHEN 'U3' THEN 'M3'
END
Nota che sto usando la sintassi dell'espressione CASE semplice per brevità.