Use CASE WHEN statement in SELECT 2 : CASE WHEN Select : Flow Control SQL / MySQL


SQL / MySQL » Flow Control » CASE WHEN Select »

 

Use CASE WHEN statement in SELECT 2



/*
mysql> SELECT Name, RatingID AS Rating,
    ->    CASE
    ->       WHEN RatingID='R' THEN 'Under 17 requires an adult.'
    ->       WHEN RatingID='X' THEN 'No one 17 and under.'
    ->       WHEN RatingID='NR' THEN 'Use discretion when renting.'
    ->       ELSE 'OK to rent to minors.'
    ->    END AS Policy
    -> FROM DVDs
    -> ORDER BY Name;
+-----------+--------+------------------------------+
| Name      | Rating | Policy                       |
+-----------+--------+------------------------------+
| Africa    | PG     | OK to rent to minors.        |
| Amadeus   | PG     | OK to rent to minors.        |
| Christmas | NR     | Use discretion when renting. |
| Doc       | G      | OK to rent to minors.        |
| Falcon    | NR     | Use discretion when renting. |
| Mash      | R      | Under 17 requires an adult.  |
| Show      | NR     | Use discretion when renting. |
| View      | NR     | Use discretion when renting. |
+-----------+--------+------------------------------+
8 rows in set (0.01 sec)


*/

Drop table DVDs;

CREATE TABLE DVDs (
   ID SMALLINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
   Name VARCHAR(60NOT NULL,
   NumDisks TINYINT NOT NULL DEFAULT 1,
   RatingID VARCHAR(4NOT NULL,
   StatID CHAR(3NOT NULL
)
ENGINE=INNODB;

INSERT INTO DVDs (Name, NumDisks, RatingID, StatID)
VALUES ('Christmas', 1'NR', 's1'),
       ('Doc',       1'G',  's2'),
       ('Africa',    1'PG', 's1'),
       ('Falcon',    1'NR', 's2'),
       ('Amadeus',   1'PG', 's2'),
       ('Show',      2'NR', 's2'),
       ('View',      1'NR', 's1'),
       ('Mash',      2'R',  's2');
  

SELECT Name, RatingID AS Rating,
   CASE
      WHEN RatingID='R' THEN 'Under 17 requires an adult.'
      WHEN RatingID='X' THEN 'No one 17 and under.'
      WHEN RatingID='NR' THEN 'Use discretion when renting.'
      ELSE 'OK to rent to minors.'
   END AS Policy
FROM DVDs
ORDER BY Name;


           
       



Leave a Comment / Note


 
Verification is used to prevent unwanted posts (spam). .

Follow Navioo On Twitter

SQL / MySQL

 Navioo Flow Control
» CASE WHEN Select