Как получить Уникальное кол-во значений в Ассоциативном массиве?
В интернете есть обходные решения, через временную таблицу либо через создание объектного типа.
Но то, что это нельзя сделать в Ассоциативном массиве, нигде нет.
declare
type REC_ID is record (
id number
);
type tab_id is table of REC_ID index by binary_integer;
tabId tab_id;
Cnt number;
UniqCnt number;
begin
tabId(1).id := 1;
tabId(2).id := 2;
tabId(3).id := 3;
tabId(4).id := 4;
tabId(5).id := 5;
Cnt := tabId.Count;
dbms_output.put_line('Total Count = '||Cnt);
--dbms_output.put_line('Unique Count = '||???);
end;
Результат:
Total Count = 5
Unique Count = 4