Чи CASEоцінює оператор SQL Server (конкретно 2008 або 2012 рр.) Всі WHENумови чи він виходить, коли знайде WHENзастереження, яке оцінює як істинне? Якщо вона проходить через увесь набір умов, чи означає це, що остання умова, що оцінює істину, перезаписує те, що зробила перша умова, яка оцінюється як істинна? Наприклад:
SELECT
CASE
WHEN 1+1 = 2 THEN'YES'
WHEN 1+1 = 3 THEN 'NO'
WHEN 1+1 = 2 THEN 'NO'
END
Результати - "ТАК", хоча останній, коли умова повинна привести його до "НІ". Здається, що він закінчується, як тільки виявляє першу ІСТИНУЮ умову. Чи може хтось підтвердити, якщо це так ?
COALESCE()перекладається уCASEвираз.)