multiset union distinct
exige que os elementos da coleção sejam comparáveis. No seu caso, os elementos são registros PL/SQL que infelizmente não são estruturas de dados comparáveis (ou seja, PL/SQL não fornece nenhum mecanismo embutido para comparar registros PL/SQL). multiset union
funciona porque não precisa comparar os elementos. Uma solução possível é usar o tipo de objeto Oracle em vez do registro PL/SQL. O tipo de objeto permite implementar um método de comparação exigido por
multiset union distinct
.