Страницы

Поиск по вопросам

суббота, 21 марта 2020 г.

Как пользоватся типом данных BOOLEAN в SELECT запросе?

#sql #oracle #plsql


Имеется PL/SQL функциия с типом данных BOOLEAN как параметр:

function get_something(name in varchar2, ignore_notfound in boolean);


Эта функция часть инструментов от сторонних разработчиков и я не могу её менять.

Хотелось  бы использовать эту функцию в SELECT запросе:

 select get_something('NAME', TRUE) from dual;


Но так не работает, получаю ошибку:


  ORA-00904: "TRUE": invalid identifier


Как понимаю, кючевое слово TRUE не распознаётся.

Как же сделать чтобы оно работало?
    


Ответы

Ответ 1



Можно сделать обёрточную функцию, например: function get_something (name in varchar2, ignore_notfound in varchar2) return varchar2 is begin return get_something (name, (upper(ignore_notfound) = 'TRUE')); end; Затем вызывать её так: select get_something ('Name', 'true') from dual; Решите, какие значения для ignore_notfound больше подходят. Я предположил, что 'TRUE' или 'true' означает TRUE, всё остальное - FALSE. Источник @TonyAndrews

Комментариев нет:

Отправить комментарий