目前,我有两个for循环,将i推入两个独立的json_array_t中,如
[123,124,125,126]
[123,126,127]
我想将这两个json_array_t合并为一个,然后删除重复的,这样它就会产生
[123,124,125,126,127]
将ids从一个json_array_t推送到另一个执行此操作的im
ja_id1.put(1,id2,false);
但是这会将所有的im放在一起,并保留重复的im,我不知道如何删除重复的im,谢谢。
发布于 2022-01-20 03:08:36
在添加值之前检查副本:
DECLARE
arr1 JSON_ARRAY_T := JSON_ARRAY_T.PARSE('[123,124,125,126]');
arr2 JSON_ARRAY_T := JSON_ARRAY_T.PARSE('[123,126,127]');
BEGIN
<<outer_loop>>
FOR i IN 0 .. arr2.get_Size - 1
LOOP
FOR j IN 0 .. arr1.get_size - 1
LOOP
IF arr1.get_number(j) = arr2.get_number(i) THEN
CONTINUE outer_loop;
END IF;
END LOOP;
arr1.append(arr2.get_number(i));
END LOOP;
FOR i IN 0 .. arr1.get_Size - 1
LOOP
DBMS_OUTPUT.PUT_LINE(arr1.get_number(i));
END LOOP;
END;
/
其中产出:
123 124 125 126 127
db<>fiddle https://dbfiddle.uk/?rdbms=oracle_21&fiddle=188b7b1d895513267e04140850fef2a6
https://stackoverflow.com/questions/70784821
复制