Условный оператор в запросе
1 мин
Описание
Оператор ВЫБОР используется в случаях когда нам необходимо различное поведение в зависимости от возникших условий.
Примеры
К примеру, если значение поля Дата выпадает на день программиста (256-ой день в году), или на 31-ое декабря то выведем соответствующее поздравление. А если на любое другое число, выведем что нибудь нейтральное.
ВЫБРАТЬ
ВЫБОР
КОГДА ДЕНЬГОДА(&ТекущаяДата) = 256
ТОГДА "Поздравляю с днем программиста!"
КОГДА МЕСЯЦ(&ТекущаяДата) = 12
И ДЕНЬ(&ТекущаяДата) = 31
ТОГДА "Поздравляю с наступающим новым годом!"
ИНАЧЕ "Сегодня нет праздника"
КОНЕЦ КАК Сообщение
Синтаксис оператора ВЫБОР:
ВЫБОР
КОГДА <ЛогическоеВыражение> ТОГДА <ВыражениеДляИстина>
ИНАЧЕ <ВыражениеДляЛожь>
КОНЕЦ
В рамках операции ВЫБОР может быть описано какое угодно количество логических условий "КОГДА .... ТОГДА...." в том числе и вложенных.
Так же существует и второй вариант синтаксиса, когда мы хотим проверить элементы только на равенство, не используя других функций и операторов сравнения.
Мы можем указать сравниваемое значение прямо после слова "ВЫБОР", а в когда помещать сами значения. К примеру у нас есть значение количества в таблице, и мы хотим с помощью запроса определить, что количество товара равно 1 и пометить эти строки в результате запроса:
ВЫБРАТЬ
Товары.Товар КАК Товар,
Товары.Количество КАК Количество,
ВЫБОР Товары.Количество
КОГДА 1
ТОГДА "Вы заказали всего 1 товар"
ИНАЧЕ "Спасибо за заказ!"
КОНЕЦ КАК Сообщение
ИЗ
Товары КАК Товары
В результате мы можем получить следующий набор данных:
Товар | Количество | Сообщение |
---|---|---|
Апельсин | 1 | Вы заказали всего 1 товар |
Яблоко | 20 | Спасибо за заказ! |
Роза | 13 | Спасибо за заказ! |
Задачи на эту тему:
- Задача 66. Применение параметров
- Задача 67. Применение условного оператора Выбор Когда
- Задача № 10. Определить общее количество ингредиентов для каждой продукции с отбором
- Задача № 3. Статистика записей по видам номенклатур
- Задача № 12. Определить продукцию с самым большим количеством ингредиентов (по количеству)
- Задача № 39. Вывести предпоследнюю закупочную цену для товара «Сыр маскорпоне»