TRIM¶
TRIM メソッドは、コレクションの最後から要素を削除します。 TRIM メソッドの構文は次のとおりです。
<collection>.TRIM[(<count>)]
collection はコレクションの名前です。
count は、コレクションの最後から削除された要素の数です。 count が 0 より小さいか、コレクション内の要素の数より大きい場合、AdvancedServerはエラーを返します。
次の例は、 TRIM メソッドを使用してコレクションの末尾から要素を削除する方法を示しています。
DECLARE
TYPE sparse_arr_typ IS TABLE OF NUMBER;
sparse_arr sparse_arr_typ := sparse_arr_typ(-100,-10,0,10,100);
BEGIN
DBMS_OUTPUT.PUT_LINE('COUNT: ' || sparse_arr.COUNT);
sparse_arr.TRIM;
DBMS_OUTPUT.PUT_LINE('COUNT: ' || sparse_arr.COUNT);
END;
COUNT: 5
COUNT: 4
COUNT は、 TRIM メソッドの前に、コレクションに 5 要素があったことを示します。 TRIM メソッドが呼び出された後、コレクションには 4 要素が含まれます。
TRIM メソッドを使用して、コレクションの末尾から削除する要素の数を指定することもできます。
DECLARE
TYPE sparse_arr_typ IS TABLE OF NUMBER;
sparse_arr sparse_arr_typ := sparse_arr_typ(-100,-10,0,10,100);
v_results VARCHAR2(50);
BEGIN
DBMS_OUTPUT.PUT_LINE('COUNT: ' || sparse_arr.COUNT);
sparse_arr.TRIM(2);
DBMS_OUTPUT.PUT_LINE('COUNT: ' || sparse_arr.COUNT);
FOR i IN sparse_arr.FIRST .. sparse_arr.LAST LOOP
IF sparse_arr(i) IS NULL THEN
v_results := v_results || 'NULL ';
ELSE
v_results := v_results || sparse_arr(i) || ' ';
END IF;
END LOOP;
DBMS_OUTPUT.PUT_LINE('Results: ' || v_results);
END;
COUNT: 5
COUNT: 3
Results: -100 -10 0
COUNT は、 TRIM メソッドの前に、コレクションに 5 要素があったことを示します。 TRIM メソッドが呼び出された後、コレクションには 3 要素が含まれます。