У меня есть сохраненный процесс.где я передаю логическое значение, например, IS_ELIGIBLE.Теперь я хочу иметь возможность написать запрос примерно так:
SELECT col1,
CASE
WHEN IS_ELIGIBLE THEN col2 * 100
ELSE
col2 * 50
END
INTO OUT_COL1, OUT_SCORE
FROM TABLE_NAME
Проблема в том, что IS_ELIGIBLE не является одним из столбцов в TABLE_NAME, ошибка запроса отсутствует.Я могу написать тот же запрос, используя if..else т.е..
IF IS_ELIGIBLE
SELECT col1, col2 * 100
ELSE
SELECT col1, col2 * 50
END
Но я буду повторять оператор выбора дважды.Я знаю, что могу создать функцию для этого оператора select, чтобы мне не приходилось повторять дважды.Но мне было просто любопытно, можно ли это сделать, не делая if..else или создавая новую функцию?Благодарю.