WM_CONCAT com cláusula DISTINCT - pacote compilado versus problema de consulta independente
Eu estava escrevendo algum programa que usa a função WM_CONCAT. Quando eu executo esta consulta:
SELECT WM_CONCAT(DISTINCT employee_id)
FROM employee
WHERE ROWNUM < 20;
Funciona bem. Quando tento compilar a mesma consulta relativamente em uma função ou procedimento de pacote, ele produz este erro: PL / SQL: ORA-30482: opção DISTINCT não permitida para esta função
FUNCTION fetch_raw_data_by_range
RETURN VARCHAR2 IS
v_some_string VARCHAR2(32000);
BEGIN
SELECT WM_CONCAT(DISTINCT employee_id)
INTO v_some_string
FROM employee
WHERE ROWNUM < 20;
RETURN v_some_string;
END;
Eu percebo que o WM_CONCAT não é oficialmente suportado, mas alguém pode explicar por que ele funcionaria como uma consulta independente com DISTINCT, mas não compila em um pacote?