Introduction
The CASE expression helps you choose different results based on conditions, like making decisions in your data.
CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ... ELSE result_default END
SELECT CASE WHEN score >= 90 THEN 'Excellent' WHEN score >= 75 THEN 'Good' ELSE 'Needs Improvement' END AS performance FROM students;
SELECT name, CASE WHEN age < 18 THEN 'Minor' ELSE 'Adult' END AS age_group FROM people;
SELECT product, price, CASE WHEN price IS NULL THEN 'Price not available' ELSE 'Price available' END AS price_status FROM products;
CREATE TABLE sales ( id SERIAL PRIMARY KEY, amount INTEGER ); INSERT INTO sales (amount) VALUES (50), (150), (250), (NULL); SELECT id, amount, CASE WHEN amount IS NULL THEN 'No Sale' WHEN amount < 100 THEN 'Small Sale' WHEN amount BETWEEN 100 AND 200 THEN 'Medium Sale' ELSE 'Large Sale' END AS sale_category FROM sales ORDER BY id;
CASE expression do in PostgreSQL?employees with column salary, what will this query return?SELECT salary, CASE WHEN salary > 5000 THEN 'High' ELSE 'Low' END AS salary_level FROM employees;
SELECT name, CASE WHEN age > 18 THEN 'Adult' WHEN age < 18 THEN 'Minor' END AS age_group FROM users;
Pass the test and this pattern moves unknown