क्या SQL सर्वर (2008 या 2012, विशेष रूप से) CASE
कथन सभी WHEN
स्थितियों का मूल्यांकन करता है या क्या यह एक बार एक ऐसा WHEN
खंड निकलता है जो सत्य का मूल्यांकन करता है? यदि यह शर्तों के पूरे सेट से गुज़रता है, तो क्या इसका मतलब यह है कि अंतिम स्थिति का मूल्यांकन वास्तविक अधिलेखित करता है कि सच का मूल्यांकन करने वाली पहली शर्त क्या है? उदाहरण के लिए:
SELECT
CASE
WHEN 1+1 = 2 THEN'YES'
WHEN 1+1 = 3 THEN 'NO'
WHEN 1+1 = 2 THEN 'NO'
END
परिणाम "YES" है, भले ही अंतिम हो जब स्थिति को "NO" का मूल्यांकन करना चाहिए। ऐसा लगता है कि यह पहली बार TRUE स्थिति प्राप्त करने के बाद बाहर निकलता है। किसी की पुष्टि करें कर सकते हैं अगर यह है मामला ।
COALESCE()
कि एकCASE
अभिव्यक्ति में अनुवादित है ।)