Welcome to plsql4all.blogspot.com SQL, MYSQL, ORACLE, TERADATA, MONGODB, MARIADB, GREENPLUM, DB2, POSTGRESQL.

Friday, 16 February 2024

CASE Statement in DB2

In IBM DB2, the CASE expression is used for conditional logic within SQL queries. It allows you to perform different operations based on specified conditions.

Here's the basic syntax for the CASE expression in DB2:

CASE

    WHEN condition1 THEN result1

    WHEN condition2 THEN result2

    ...

    ELSE default_result

END

- condition1, condition2, etc.: These are the conditions to be evaluated.

- result1, result2, etc.: These are the values or expressions to be returned if the corresponding condition is true.

- default_result: This is an optional default value or expression to be returned if none of the conditions are true.

Let's see an example to understand how the CASE expression works in DB2:

Suppose we have a table named employees with columns name and salary. We want to categorize employees into different salary ranges based on their salary. We'll use the CASE expression for this.

SELECT 

    name,

    salary,

    CASE

        WHEN salary < 50000 THEN 'Low'

        WHEN salary >= 50000 AND salary < 100000 THEN 'Medium'

        ELSE 'High'

    END AS salary_range

FROM 

    employees;

In this query:

- We select the name and salary columns directly.

- We use a CASE expression to categorize employees into different salary ranges based on their salary.

- If an employee's salary is less than 50000, we categorize them as 'Low'.

- If their salary is between 50000 (inclusive) and 100000 (exclusive), we categorize them as 'Medium'.

- For all other cases (salary greater than or equal to 100000), we categorize them as 'High'.

This query demonstrates how you can use the CASE expression to apply conditional logic within a SQL query in DB2.

No comments:

Post a Comment

Please provide your feedback in the comments section above. Please don't forget to follow.