Tuesday, November 13, 2012

PL/SQL SELECT into array

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
DECLARE
    TYPE ARRAY_TYPE IS TABLE OF VARCHAR2(20);
    mno_array ARRAY_TYPE;
    mno_id VARCHAR2(20);
BEGIN
     SELECT *
        BULK COLLECT
        INTO mno_array
        FROM (SELECT DT_PARTY.HOST_MNO_ID FROM RESOURCE_DB.HT_SIM_PARTY, RESOURCE_DB.DT_PARTY
                    WHERE HT_SIM_PARTY.PARTY_ID = DT_PARTY.PARTY_ID
                        AND HT_SIM_PARTY.SIM_ID = 'SIM_0000000000000184');
    DBMS_OUTPUT.PUT_LINE('count='||mno_array.COUNT);
    FOR i in 1 .. mno_array.COUNT
    LOOP
        DBMS_OUTPUT.PUT_LINE(mno_array(i));
    END LOOP;
END;