SELECT CASE statement of SQL

We can display alias of value(like alias of column name).
normally we can display alias for a column by the following query :

SELECT prod_name AS Product
FROM Products;

But we can decide the value to be shown instead of original value by using the following syntax :

SELECT <column_name_to_be_shown>,
    CASE <column_name_to_be_checked>
        WHEN <original_column_value> THEN <new_column_value>...
        END AS <columns_alias_name>
FROM <table_name>;


e.g.
-------------------
|    Products     |
-------------------
prod_name|category|
-------------------
    p1   |   A    |
    p2   |   B    |
    p3   |   A    |
    p4   |   B    |
    p5   |   B    |
-------------------

SELECT prod_name, category
      ,CASE category
       WHEN 'A' THEN 'Gold'
       WHEN 'B' THEN 'Silver'
       END AS Category        
FROM Products;

This query will display :

prod_name   |    Category
-------------------------
   p1       |      Gold
   p2       |      Silver
   p3       |      Gold
   p4       |      Silver
   p5       |      Silver



Comments