Условия в SQL и условные SQL запросы CASE, WHEN, THEN, ELSE , END в базах данных SQLite
Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223
Рубрика SQLite на сайте: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd
— Условные выражения CASE, WHEN, THEN, ELSE, END в SQL
/*
Условные выражения, состоящие из CASE, WHEN, THEN и ELSE
полезны в тех случаях, когда нужно осуществить ряд проверок и
получить конечный результат в зависимости от исхода этих
проверок. По сути, CASE является SQL оператором, а ключевые
слова WHEN и THEN позволяют задавать несколько условия для
проверки, теоретически количество этих условий может быть
бесконечным.
Выражение с оператором CASE имеют две формы записи, но в
любом случае условное выражение в SQL завершается ключевым
словом END.
*/
— 1 вариант
CASE
WHEN первое условие
THEN первое возвращаемое значение
WHEN второе условие
THEN второе возвращаемое значение
…
WHEN энное условие
THEN энное возвращаемое значение
[ELSE возвращаемое значение, если условие не будет выполнено]
END
— 2 вариант
CASE первое значение, которое хотим проверить
WHEN первое значение, с которым сравниваем
THEN первое значение, которое возвращаем
WHEN второе значение, с которым сравниваем
THEN второе значение, которое возвращаем
…
WHEN энное значение, с которым сравниваем
THEN энное значение, которое возвращаем
[ELSE возвращаемое значение, если условие не будет выполнено]
END
— Для начала рассмотрим два простых примера
CREATE TABLE booltable (a,b);
INSERT INTO booltable VALUES (1,0);
SELECT * FROM booltable;
— 1 вариант выражения CASE в SQL
SELECT
CASE WHEN a==1 THEN ‘true’ ELSE ‘false’ END as typeColA,
CASE WHEN b THEN ‘true’ ELSE ‘false’ END as typeColB
FROM booltable;
— 2 вариант выражения CASE в SQL
SELECT
CASE a WHEN 1 THEN ‘true’ ELSE ‘false’ END AS boolA,
CASE b WHEN 1 THEN ‘true’ ELSE ‘false’ END AS boolB
FROM booltable;
Последние сообщения
127 полезных и бесплатных онлайн академий
23.04.2019
Ресурсы для objective-C программистов
21.03.2018