Oracle从类型号数组中获取distict值
发布时间:2021-02-02 03:01:25 所属栏目:站长百科 来源:网络整理
导读:我有一个下面定义的数组类型 – TYPE INPUT_ARRAY_NUM IS TABLE OF NUMBER INDEX BY BINARY_INTEGER; 我已将上述类型的变量定义为 – temp INPUT_ARRAY_NUM; 用以下值填充它们 – temp(0) := 1;temp(1) := 1;temp(2) := 3; 如何获得不同的值(1,3)? 解决方法
我有一个下面定义的数组类型 – TYPE INPUT_ARRAY_NUM IS TABLE OF NUMBER INDEX BY BINARY_INTEGER; 我已将上述类型的变量定义为 – temp INPUT_ARRAY_NUM; 用以下值填充它们 – temp(0) := 1; temp(1) := 1; temp(2) := 3; 如何获得不同的值(1,3)? 解决方法您可以使用NESTED TABLE并使用MULTISET操作.MULTISET操作中的DISTINCT关键字从集合中删除重复项. 例如, SQL> SET SERVEROUTPUT ON SQL> DECLARE 2 TYPE t_tab IS TABLE OF NUMBER; 3 l_tab1 t_tab := t_tab(1,1,3,5,5); 4 BEGIN 5 l_tab1 := l_tab1 MULTISET INTERSECT DISTINCT l_tab1; 6 FOR i IN l_tab1.first .. l_tab1.last 7 LOOP 8 DBMS_OUTPUT.put_line('Distinct values are '||l_tab1(i)); 9 END LOOP; 10 END; 11 / Distinct values are 1 Distinct values are 3 Distinct values are 5 PL/SQL procedure successfully completed. (编辑:好传媒网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |