SQL CASE Function

Quick summary: The SQL CASE expression provides conditional logic inside queries.

SQL CASE Syntax

CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ELSE result END
SQL

SQL CASE Basic examples

SELECT id, CASE WHEN active = 1 THEN 'yes' ELSE 'no' END AS status FROM users;
SQL
Output:
yes / no values

Implements conditional logic.

SQL CASE Real-world usage

SELECT total,
CASE
  WHEN total < 50 THEN 'low'
  WHEN total < 200 THEN 'medium'
  ELSE 'high'
END AS order_size
FROM orders;
SQL
Output:
Order size labels

Categorizes numeric values.

SQL CASE Edge cases

SELECT CASE WHEN NULL THEN 'yes' ELSE 'no' END;
SQL
Output:
no

NULL conditions evaluate to false.

SQL CASE Common mistakes

Forgetting ELSE clause

CASE returns NULL if no condition matches.

Incorrect
CASE WHEN x > 0 THEN 'yes' END
Correct
CASE WHEN x > 0 THEN 'yes' ELSE 'no' END

Always include ELSE.

SQL CASE Frequently Asked Questions

What does CASE do in SQL?

Performs conditional logic in queries.

Use case of CASE?

Conditional transformations.

Syntax of CASE?

CASE WHEN condition THEN result ELSE result END.

Common mistake?

Missing ELSE clause.

Can be used in SELECT?

Yes.

Used in ORDER BY?

Yes.

Return type?

Depends on expressions.

Performance?

Minimal impact.

Alternative?

IF (DB-specific).

Handles NULL?

Yes.

Used in reports?

Yes.

Best practice?

Keep logic simple.

SQL CASE Related SQL Keywords