CASE

Conditional

Provides if/then/else logic in SQL queries. Can be used in SELECT, WHERE, and ORDER BY.

Syntax

CASE WHEN condition THEN result [ELSE default] END

Example

SELECT name, salary,
  CASE
    WHEN salary > 100000 THEN 'Senior'
    WHEN salary > 50000 THEN 'Mid'
    ELSE 'Junior'
  END AS level
FROM employees;

About SQL CASE

The CASE keyword belongs to the Conditional category of SQL statements. Provides if/then/else logic in SQL queries. Can be used in SELECT, WHERE, and ORDER BY. Understanding this command is essential for any developer working with relational databases like PostgreSQL, MySQL, SQLite, or SQL Server.

SQL (Structured Query Language) is the standard language for managing and querying relational databases. The CASE statement is supported across all major database systems, though specific syntax may vary slightly between PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, and SQLite. Always consult your database's documentation for vendor-specific features and limitations.

Best practices for using CASE: always test queries on a development database before running them in production, use parameterized queries to prevent SQL injection, and leverage EXPLAIN to understand query performance. For complex queries, consider using CTEs (Common Table Expressions) to improve readability and maintainability.

Related SQL Keywords