COALESCE vs CASE Expression in SQL Server

SQL Server COALESCE vs CASE Expression in Hindi (Syntax, Example, Interview Questions)

SQL Server में COALESCE vs CASE Expression क्या हैं?

🧠 Definition (Memory के लिए)

COALESCE SQL Server में पहला non-NULL value return करता है। इसे आमतौर पर NULL values को replace करने के लिए उपयोग किया जाता है।

CASE Expression एक conditional logic है जो IF-ELSE की तरह काम करता है और अलग-अलग conditions के हिसाब से value return करता है।

🧩 Syntax

-- COALESCE Syntax
COALESCE(value1, value2, value3, ...)

-- CASE Syntax
CASE
    WHEN condition THEN result
    WHEN condition THEN result
    ELSE default_value
END

🧪 Example

CREATE TABLE Employees (
    EmpID INT,
    FirstName VARCHAR(50),
    MiddleName VARCHAR(50),
    LastName VARCHAR(50)
);

INSERT INTO Employees VALUES
(1, 'Amit', NULL, 'Sharma'),
(2, 'Ravi', 'Kumar', 'Verma'),
(3, 'Suman', NULL, NULL);

-- COALESCE Example
SELECT EmpID,
       COALESCE(MiddleName, FirstName, 'No Name') AS FinalName
FROM Employees;

-- CASE Example
SELECT EmpID,
       CASE
           WHEN MiddleName IS NOT NULL THEN MiddleName
           WHEN FirstName IS NOT NULL THEN FirstName
           ELSE 'No Name'
       END AS FinalName
FROM Employees;

📤 Output

EmpID | FinalName
-----------------
1     | Amit
2     | Kumar
3     | Suman

💡 Explanation

  • COALESCE सबसे पहला non-NULL value return करता है।
  • CASE logical condition चेक करता है और उसके हिसाब से result देता है।
  • COALESCE simple है, लेकिन CASE complex conditions के लिए बेहतर है।
  • COALESCE internally CASE की तरह ही काम करता है — performance लगभग समान होती है।

🎯 Interview Questions & Answers

  1. Q: COALESCE का मुख्य उपयोग क्या है?
    A: NULL values को replace करने और पहला non-NULL value return करने के लिए।
  2. Q: COALESCE और CASE में performance difference क्या है?
    A: Performance लगभग gleichen है, क्योंकि COALESCE internally CASE में convert होता है।
  3. Q: कब CASE का उपयोग करना चाहिए?
    A: जब आपको complex IF-ELSE conditions लागू करनी हों।
  4. Q: COALESCE vs ISNULL में क्या अंतर है?
    A: COALESCE multiple values ले सकता है जबकि ISNULL सिर्फ दो values।

📘 Conclusion

🔹 COALESCE NULL values को संभालने के लिए सबसे आसान और readable तरीका है।
🔹 CASE तब उपयोग करें जब आपको complex conditional logic चाहिए।

दोनों ही SQL Server में बहुत useful expressions हैं—use case के हिसाब से चुनें।

Post a Comment

0 Comments