Purpose and Syntax of the CASE Statement in SQL
π‘ Concept Name
CASE Statement in SQL β A conditional expression that allows you to return different values based on specified conditions within a query.
π Quick Intro
The CASE statement in SQL helps implement conditional logic, similar to IF-ELSE statements in programming languages, enabling dynamic output based on data values.
π§ Analogy / Short Story
Imagine a cashier deciding the price discount for customers based on their membership status: regular customers get no discount, silver members get 10%, and gold members get 20%. The CASE statement works like the cashierβs decision logic to apply different outcomes based on conditions.
π§ Technical Explanation
- The CASE statement evaluates conditions sequentially and returns the corresponding result of the first condition that evaluates to true.
- It supports two forms: Simple CASE (compares an expression to values) and Searched CASE (evaluates Boolean expressions).
- The ELSE part is optional and specifies a default result if no conditions match.
- CASE can be used in SELECT, WHERE, ORDER BY, and other SQL clauses.
π» Real Code Example
-- Simple CASE example
SELECT OrderID,
CASE Status
WHEN 'P' THEN 'Pending'
WHEN 'C' THEN 'Completed'
ELSE 'Unknown'
END AS OrderStatus
FROM Orders;
-- Searched CASE example
SELECT EmployeeID, Salary,
CASE
WHEN Salary < 40000 THEN 'Low'
WHEN Salary BETWEEN 40000 AND 70000 THEN 'Medium'
ELSE 'High'
END AS SalaryLevel
FROM Employees;

β Interview Q&A
Q1: What is the purpose of the CASE statement?
A: To implement conditional logic within SQL queries returning different results based on conditions.
Q2: What are the two types of CASE statements?
A: Simple CASE and Searched CASE.
Q3: Is ELSE mandatory in CASE?
A: No, but it provides a default result if no condition matches.
Q4: Can CASE be used in WHERE clauses?
A: Yes, to add conditional filtering.
Q5: What happens if no conditions match and no ELSE is provided?
A: CASE returns NULL.
Q6: Can CASE statements be nested?
A: Yes, CASE can be nested inside another CASE.
Q7: Is CASE supported by all SQL databases?
A: Most modern databases support CASE statements.
Q8: How does Simple CASE differ from Searched CASE?
A: Simple CASE compares a single expression; Searched CASE evaluates Boolean conditions.
Q9: Can you use CASE in ORDER BY?
A: Yes, to sort dynamically.
Q10: What datatype does CASE return?
A: It returns a single datatype consistent across all results.
π MCQs
Q1. What does the CASE statement do?
- Joins tables
- Implements conditional logic in SQL
- Creates indexes
- Deletes data
Q2. How many types of CASE statements are there?
- One
- Two
- Three
- Four
Q3. Is ELSE clause mandatory in CASE?
- Yes
- No
- Only for Simple CASE
- Only for Searched CASE
Q4. Can CASE be used in WHERE clause?
- No
- Yes
- Sometimes
- Depends on DBMS
Q5. What is the result if no CASE conditions match and no ELSE clause?
- 0
- ''
- NULL
- Error
Q6. Can CASE statements be nested?
- No
- Yes
- Only in SQL Server
- Only in Oracle
Q7. What is Simple CASE?
- Compares two expressions
- Compares one expression to values
- Evaluates Boolean
- None
Q8. What is Searched CASE?
- Evaluates Boolean conditions
- Compares expressions
- Creates tables
- Deletes rows
Q9. Can CASE be used in ORDER BY?
- No
- Yes
- Only in SELECT
- Only in UPDATE
Q10. What datatype does CASE return?
- Multiple datatypes
- Single datatype consistent across results
- Only integers
- Only strings
π‘ Bonus Insight
The CASE statement is a powerful tool in SQL that enables complex conditional logic within queries, making reports and data processing more dynamic without needing procedural code.
π PDF Download
Need a handy summary for your notes? Download this topic as a PDF!