Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> SQL Server

SQL Server में CASE स्टेटमेंट

यह लेख आपको विस्तार से दिखाएगा कि SQL Server में CASE स्टेटमेंट हैंडलिंग फंक्शन का उपयोग कैसे करें, विशिष्ट सिंटैक्स और उदाहरणों के साथ ताकि फंक्शन को बेहतर ढंग से समझा और ग्रहण किया जा सके।

विवरण

CASE स्टेटमेंट SQL Server में शाखा शर्तों को सेट करने के लिए उपयोग किया जाता है, IF-THEN-ELSE स्टेटमेंट के कार्य के समान।

CASE के 2 फॉर्मेट हैं:

  1. सिंपल CASE फंक्शन, जिसे सिंपल CASE भी कहा जाता है।
  2. सर्च्ड CASE फंक्शन जिसे सर्च्ड CASE भी कहा जाता है।

अंदर:

  1. सिंपल CASE एक एक्सप्रेशन की तुलना सरल एक्सप्रेशन के एक सेट से करके परिणाम निर्धारित करता है।
  2. सर्च्ड CASE परिणाम निर्धारित करने के लिए बूलियन एक्सप्रेशन के एक सेट का मूल्यांकन करता है।
  3. दोनों फॉर्मेट ELSE आर्गुमेंट का समर्थन करते हैं (लेकिन आवश्यक नहीं)।

सिंटैक्स

SQL Server में CASE स्टेटमेंट का उपयोग करने के लिए, हम निम्नलिखित सिंटैक्स का उपयोग करते हैं:

सिंपल CASE

CASE इनपुट_एक्सप्रेशन

WHEN एक्सप्रेशन_1 THEN परिणाम_1
WHEN एक्सप्रेशन_2 THEN परिणाम_2
.
WHEN एक्सप्रेशन_n THEN परिणाम_n
ELSE अन्य_परिणाम
END

या सर्च्ड CASE

CASE

WHEN शर्त_1 THEN परिणाम_1
WHEN शर्त_2 THEN परिणाम_2
.
WHEN शर्त_n THEN परिणाम_n
ELSE अन्य_परिणाम
END

पैरामीटर्स :

  1. इनपुट_एक्सप्रेशन: The एक्सप्रेशन जिसकी तुलना प्रत्येक प्रदान किए गए मान से की जाएगी।
  2. एक्सप्रेशन_1, एक्सप्रेशन_2, एक्सप्रेशन_n: एक्सप्रेशन जिनका उपयोग इनपुट एक्सप्रेशन के साथ क्रमिक तुलना के लिए किया जाएगा। जब कोई एक्सप्रेशन इनपुट_एक्सप्रेशन से मेल खाता है, तो CASE अगला स्टेटमेंट निष्पादित करेगा और आगे कोई तुलना नहीं।
  3. शर्त_1, शर्त_2, शर्त_n : सूचीबद्ध क्रम में मूल्यांकन की जाने वाली शर्तें। जब कोई शर्त सत्य निर्धारित होती है, तो CASE परिणाम लौटाता है और आगे कोई शर्त मूल्यांकन नहीं की जाती। सभी शर्तें समान डेटा टाइप की होनी चाहिए।
  4. परिणाम_1, परिणाम_2, परिणाम_n : शर्त के सत्य होने पर लौटाया गया परिणाम। सभी मान समान डेटा टाइप के होने चाहिए।

नोट :

  1. यदि TRUE के लिए कोई मैच नहीं मिलता है, तो CASE स्टेटमेंट ELSE क्लॉज में परिणाम लौटाएगा।
  2. यदि कोई ELSE क्लॉज नहीं है और कोई TRUE शर्त नहीं है तो CASE स्टेटमेंट NULL लौटाएगा।
  3. शर्तें सूचीबद्ध क्रम में मूल्यांकन की जाती हैं। जब कोई शर्त सत्य निर्धारित होती है, तो CASE स्टेटमेंट परिणाम लौटाता है और आगे कोई शर्त मूल्यांकन नहीं की जाती।
  4. CASE का उपयोग SQL Server के बाद के संस्करणों में किया जा सकता है: SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, और SQL Server 2005।

उदाहरण के लिए

SQL Server में CASE स्टेटमेंट के कुछ उदाहरण देखें और जानें।

उदाहरण 1: सिंपल CASE

मान लीजिए आपको TipsMake.com वेबसाइट के सेक्शन की जांच करने की आवश्यकता है, रूपांतरण टेबल के कोड कॉलम के आधार पर:

  1. यदि Code = '01' तो 'Laptrinh-TipsMake.com'।
  2. यदि Code = '02' तो 'Congnghe-TipsMake.com'।
  3. यदि Code = '03' तो 'Cuocsong-TipsMake.com'।
  4. इसके विपरीत, यदि 1 से 3 नहीं है तो सेक्शन 'Khoahoc-TipsMake.com'।
SELECT सेक्शननाम, Code

(CASE code
WHEN 01 THEN 'Laptrinh-TipsMake.com'
WHEN 02 THEN 'Congnghe-TipsMake.com'
WHEN 03 THEN 'Cuocsong-TipsMake.com'
ELSE 'Khoahoc-TipsMake.com'
END) AS सेक्शन
FROM सेक्शन
ORDER BY Code

लौटाए गए परिणाम:

सेक्शननाम Code सेक्शन SQL Server 01 Laptrinh-TipsMake.com Linux 02 Congnghe-TipsMake.com Python 01 Laptrinh-TipsMake.com JavaScript 01 Laptrinh-TipsMake.com Android 02 Congnghe-TipsMake.com मनोरंजन 03 Cuocsong-TipsMake.com Cuocsong-TipsMake.com विज्ञान वक्र 04 Khoahoc-TipsMake.com खोज विज्ञान 05 Khoahoc-TipsMake.com

उदाहरण 2: सर्च्ड CASE

SELECT सेक्शननाम,

CASE
WHEN code = 01 THEN 'Laptrinh-TipsMake.com'
WHEN code = 02 THEN 'Congnghe-TipsMake.com'
WHEN code = 03 THEN 'Cuocsong-TipsMake.com'
ELSE 'Khoahoc-TipsMake.com'
END
FROM सेक्शन;

आप ELSE शर्तों का उपयोग नहीं भी कर सकते जैसे:

SELECT सेक्शननाम, Code

(CASE code
WHEN 01 THEN 'Laptrinh-TipsMake.com'
WHEN 02 THEN 'Congnghe-TipsMake.com'
WHEN 03 THEN 'Cuocsong-TipsMake.com'
END) AS सेक्शन
FROM सेक्शन
ORDER BY Code

या:

SELECT सेक्शननाम,

CASE
WHEN code = 01 THEN 'Laptrinh-TipsMake.com'
WHEN code = 02 THEN 'Congnghe-TipsMake.com'
WHEN code = 03 THEN 'Cuocsong-TipsMake.com'
END
FROM सेक्शन;

जब ELSE क्लॉज छोड़ा जाता है, यदि कोई शर्त सत्य नहीं है, तो CASE स्टेटमेंट NULL लौटाता है।

उदाहरण 3: दो शर्तों की तुलना

यहां एक उदाहरण है जो दर्शाता है कि विभिन्न शर्तों की तुलना करने के लिए CASE स्टेटमेंट का उपयोग कैसे करें:

SELECT

CASE
WHEN code < 2 THEN 'Laptrinh-TipsMake.com'
WHEN code = 2 THEN 'Congnghe-TipsMake.com'
END
FROM सेक्शन;

याद रखें कि शर्तों की तुलना सूचीबद्ध क्रम में क्रमिक रूप से की जाती है। जब कोई शर्त सत्य निर्धारित होती है, तो CASE स्टेटमेंट तुरंत परिणाम लौटाएगा और कोई अन्य शर्त मूल्यांकन नहीं की जाएगी। इसलिए आपको अपने शर्तों को सूचीबद्ध करने वाले क्रम को चुनते समय सावधान रहने की आवश्यकता है।

SQL Server में CASE फंक्शन के अधिक विशिष्ट उदाहरण देखें


  1. SQL Server में IF...ELSE स्टेटमेंट SQL Server में IF...ELSE स्टेटमेंट

    विवरण अन्य प्रोग्रामिंग भाषाओं की तरह, SQL Server भी उपयोगकर्ताओं को IF...ELSE कमांड प्रदान करता है। यह लेख सिंटैक्स और स्पष्ट उदाहरणों के साथ IF...ELSE का उपयोग कैसे करें, इसका विस्तार से वर्णन करता है। IF...ELSE का उपयोग करने का सिंटैक्स SQL Server में IF ब्रांच स्टेटमेंट...ELSE का उपयोग करने के

  1. - SQL Server में PROCEDURE (स्टोर्ड प्रोसीजर)

    विवरण Procedure (स्टोर्ड प्रोसीजर) डेटाबेस में कई स्टेटमेंट्स का एक प्रोग्राम है जिसे आप बाद में उपयोग के लिए सेव करते हैं। SQL Server में, आप प्रोसीजर को पैरामीटर्स पास कर सकते हैं, हालांकि यह फंक्शन की तरह एक विशिष्ट मान नहीं लौटाता बल्कि सफल या विफल निष्पादन को इंगित करता है। यह लेख आपको SQL Serv

  1. - MS SQL Server क्या है?

    SQL Server क्या है? Microsoft द्वारा विकसित सॉफ़्टवेयर जो RDBMS पर आधारित है। यह एक ORDBMS (Object Relational Database Management System) भी है। एक स्वतंत्र प्लेटफ़ॉर्म। सॉफ़्टवेयर कमांड लाइन इंटरफेस और GUI इंटरफेस दोनों का उपयोग करता है। SQL भाषा समर्थन (पूर्व में SEQUEL - स्ट्रक्चर्ड इंग्लिश क्वे