Инструкция SELECT используется для условного выполнения одной из нескольких альтернативных инструкций.
По очереди вычисляется каждое выражение после фразы WHEN. Результат вычисления должен быть равен 0 или 1. Если результат равен 1, то выполняется инструкция, следующая за фразой THEN (которая может быть составной инструкцией, например, IF, DO или SELECT), а затем управление передается фразе END. Если результат равен 0, то управление передается следующей фразе WHEN.
Если ни один из результатов вычисления выражений WHEN не равен 1, то управление передается инструкциям, следующим за OTHERWISE (если они есть). В этом случае отсутствие предложения OTHERWISE приводит к ошибке.
Пример balance = balance - check Select when balance > 0 then say 'Поздравляем! У Вас на счету' balance 'долларов.' when balance = 0 then do say 'Внимание! Баланс равен нулю! ПРЕКРАТИТЕ все траты!' say "Вы подрезали свой счет в этом месяце. Надеемся," say "что Вы не будете подписывать крупные чеки." end Otherwise say "Вы уже перекрыли свой счет." say "Ваш баланс составляет сейчас" balance "долларов." say "Ооо! Остается надеяться, что банк не закроет Ваш счет." end /* Select */
Примечания: