L'istruzione SQL Server (2008 o 2012, in particolare) CASE
valuta tutte le WHEN
condizioni o esce una volta trovata una WHEN
clausola che restituisce true? Se attraversa l'intero insieme di condizioni, ciò significa che l'ultima condizione che valuta su vero sovrascrive ciò che ha fatto la prima condizione che ha valutato vero? Per esempio:
SELECT
CASE
WHEN 1+1 = 2 THEN'YES'
WHEN 1+1 = 3 THEN 'NO'
WHEN 1+1 = 2 THEN 'NO'
END
Il risultato è "SÌ" anche se l'ultima condizione in cui dovrebbe essere valutata su "NO". Sembra che esca quando trova la prima VERA condizione. Qualcuno può confermare se questo è il caso .
COALESCE()
tradotto inCASE
un'espressione.)