Функции в Oracle. Нужно искать и находить переданный параметр, используя Oracle Function - PullRequest
0 голосов
/ 31 октября 2018

У меня есть требование, например, мне нужно найти и найти значение столбца таблицы с помощью функции Oracle Parameterized.

Предположим, если в моей таблице есть столбец с именем 'Name', в котором есть 2 записи, такие как 'mike', 'steve'.

Мне нужно создать функцию, в которой я буду передавать имя в качестве входного параметра, и этот параметр должен сравниваться или повторяться с существующими значениями имени столбца таблицы «Имя».

Если переданный параметр совпадает со значением столбца, то функция должна вернуть переданный параметр

В противном случае функция должна возвращать инструкцию о том, что «переданного значения имени не существует».

Например, если в таблице есть столбец Имя, в котором есть 2 записи, такие как «Майк», «Стив».

Теперь, если я передал 'mike' в качестве входного параметра функции, функция должна вернуть 'mike' В другом случае, если я передал 'john' в качестве входного параметра функции, функция должна вернуть сообщение о том, что «переданное значение name не существует».

Пожалуйста, сообщите мне.

1 Ответ

0 голосов
/ 31 октября 2018
create or replace function does_name_exist(p_name in varchar2)
    return varchar2 is
    v_exists varchar2(1);
begin
    -- validate parameter
    select 'Y' into v_exists from my_table where name = p_name;

    -- if it exists
    return p_name;

    -- if it doesn't exist
    exception when NO_DATA_FOUND then
        return 'passed name value doesn''t exist';
end;
/
...