Я создал функцию UDF для поиска справочной таблицы
CREATE OR REPLACE function udf_rdm_lookup_func_test(
src_system VARCHAR,
src_code VARCHAR,
src_value varchar)
returns array
as
$$
SELECT DISTINCT DESC FROM rdm WHERE SOURCE_CODE = SRC_CODE AND SOURCE_VALUE = SRC_VALUE AND SOURCE_SYSTEM = SRC_SYSTEM
$$
;
Я могу вызвать UDF с помощью простого запроса SELECT
select udf_rdm_lookup_func_test('XYZ','LOBCode','001');
, но я хочу использовать это как поиск во время чтения данных из другой таблицы
SELECT DISTINCT COMPANY_CODE,SRC_SYSTEM_ID,
udf_rdm_lookup_func_test(SRC_SYSTEM_ID,'LOBCode',COMPANY_CODE)[2]
FROM ABC;
При запуске я получаю сообщение об ошибке
SQL Ошибка [2031] [42601]: SQL ошибка компиляции: cannotНе поддерживается тип неподдерживаемого подзапроса
Хотите знать, как создать функцию, которую можно использовать в операторе SELECT при чтении данных из другой таблицы? Пожалуйста, помогите