Операции выбора в языке запросов
В выражениях языка запросов могут применяться операции выбора, которые позволяют получить одно из возможных значений в соответствии с указанными условиями.
Операция выбора описывается следующим набором правил:
ВЫБОР
<Альтернативы выбора>
[ИНАЧЕ
<Выражение>]
КОНЕЦ
<Одиночный выбор> [<Альтернативы выбора>]
КОГДА
<Логическое выражение>
ТОГДА
<Выражение>
В операции выбора может указываться неограниченное количество альтернативных одиночных выборов КОГДА... ТОГДА. Они обрабатываются в запросе последовательно; если <Логическое выражение> имеет значение ИСТИНА, обработка операции выбора завершается; результатом операции является значение выражения, указанного после слова ТОГДА. Логические выражения описаны на стр. 358.
Значение выражения, указанного после слова ИНАЧЕ используется в качестве результата операции выбора в том случае, если во всех ранее указанных альтернативных одиночных выборах предикат имел значение ЛОЖЬ.
Пример:
Выбрать
Справочник.Номенклатура.Наименование,
Выбор
Когда Справочник.Номенклатура.ЭтоГруппа = Истина Тогда "Это Группа"
Когда Справочник.Номенклатура.ЗакупочнаяЦена > 1000 Тогда "1000 -"
Когда Справочник.Номенклатура.ЗакупочнаяЦена > 100 Тогда "100 - 1000"
Когда Справочник.Номенклатура.ЗакупочнаяЦена > 10 Тогда "10 - 100"
Когда Справочник.Номенклатура.ЗакупочнаяЦена > 0 Тогда «0 - 10»
Иначе "Не Задана"
Конец Цена
Результат запроса:
Наименование | Цена |
Брюки детские | 100 - 1000 |
Рубашка «Ковбойка» | 1000- |
Одежда | Это группа |
Джинсы женские | 1000- |
Свитер детский | Не задана |
Сантехника | Это группа |
Бытовая техника | Это группа |
Раковина «Лилия» | Не задана |
Мойдодыр «Аквариум» | Не задана |
Смеситель «Ультра» | 100 - 1000 |
Кухонный комбайн Крупе | 1000- |
Мясорубка Браун | Не задана |
Электронож Крупе | Не задана |
Зажигалка для газовой плиты «Огонек» | Не задана |
Калькулятор бухгалтерский | Не задана |
Кухонная техника | Это группа |
Оргтехника | Это группа |