SQL/MySQL/Flow Control/Flow Control Select

Материал из SQL эксперт
Перейти к: навигация, поиск

Using Control Flow Functions in a SELECT Statement

Drop table DVDs;
CREATE TABLE DVDs (
   ID SMALLINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
   Name VARCHAR(60) NOT NULL,
   NumDisks TINYINT NOT NULL DEFAULT 1,
   RatingID VARCHAR(4) NOT NULL,
   StatID CHAR(3) NOT 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 AS Title, StatID AS Status, RatingID AS Rating,
   IF(NumDisks>1, "Check for extra disks!", "Only 1 disk.") AS Verify
FROM DVDs
ORDER BY Title;