Use table() function to display varray type column : varray « PL SQL « Oracle PL / SQL






Use table() function to display varray type column

   
SQL>
SQL> create table emp
  2  ( empno      NUMBER(4)    constraint E_PK primary key
  3  , ename      VARCHAR2(8)
  4  , init       VARCHAR2(5)
  5  , job        VARCHAR2(8)
  6  , mgr        NUMBER(4)
  7  , bdate      DATE
  8  , sal        NUMBER(6,2)
  9  , comm       NUMBER(6,2)
 10  , deptno     NUMBER(2)    default 10
 11  ) ;

Table created.

SQL> insert into emp values(1,'Tom','N',   'TRAINER', 13,date '1965-12-17',  800 , NULL,  20);

1 row created.

SQL> insert into emp values(2,'Jack','JAM', 'Tester',6,date '1961-02-20',  1600, 300,   30);

1 row created.

SQL> insert into emp values(3,'Wil','TF' ,  'Tester',6,date '1962-02-22',  1250, 500,   30);

1 row created.

SQL> insert into emp values(4,'Jane','JM',  'Designer', 9,date '1967-04-02',  2975, NULL,  20);

1 row created.

SQL> insert into emp values(5,'Mary','P',  'Tester',6,date '1956-09-28',  1250, 1400,  30);

1 row created.

SQL> insert into emp values(6,'Black','R',   'Designer', 9,date '1963-11-01',  2850, NULL,  30);

1 row created.

SQL> insert into emp values(7,'Chris','AB',  'Designer', 9,date '1965-06-09',  2450, NULL,  10);

1 row created.

SQL> insert into emp values(8,'Smart','SCJ', 'TRAINER', 4,date '1959-11-26',  3000, NULL,  20);

1 row created.

SQL> insert into emp values(9,'Peter','CC',   'Designer',NULL,date '1952-11-17',  5000, NULL,  10);

1 row created.

SQL> insert into emp values(10,'Take','JJ', 'Tester',6,date '1968-09-28',  1500, 0,     30);

1 row created.

SQL> insert into emp values(11,'Ana','AA',  'TRAINER', 8,date '1966-12-30',  1100, NULL,  20);

1 row created.

SQL> insert into emp values(12,'Jane','R',   'Manager',   6,date '1969-12-03',  800 , NULL,  30);

1 row created.

SQL> insert into emp values(13,'Fake','MG',   'TRAINER', 4,date '1959-02-13',  3000, NULL,  20);

1 row created.

SQL> insert into emp values(14,'Mike','TJA','Manager',   7,date '1962-01-23',  1300, NULL,  10);

1 row created.

SQL>
SQL>
SQL>
SQL> create table e
  2  as
  3  select empno, ename, init, mgr, deptno
  4  from   emp;

Table created.

SQL>
SQL>
SQL> create or replace type numberlist_t
  2  as varray(4) of varchar2(20);
  3  /

Type created.

SQL>
SQL> column numlist format a60
SQL>
SQL> alter table e add (numlist numberlist_t);

Table altered.

SQL>
SQL> describe e
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 EMPNO                                              NUMBER(4)
 ENAME                                              VARCHAR2(8)
 INIT                                               VARCHAR2(5)
 MGR                                                NUMBER(4)
 DEPTNO                                             NUMBER(2)
 NUMLIST                                            NUMBERLIST_T

SQL>
SQL>
SQL> break on empno
SQL>
SQL> select empno, n.*
  2  from   e
  3  ,      TABLE(e.numlist) n;

no rows selected

SQL>
SQL>
SQL>
SQL> drop table e;

Table dropped.

SQL> drop table emp;

Table dropped.

   
    
    
  








Related examples in the same category

1.Varray constructors.
2.legal and illegal varray assignments.
3.TYPE Strings IS VARRAY(5) OF VARCHAR2(10)
4.Create a varray based on user defined type
5.Store pre-defined constants in VARRAY
6.Creating and Using VARRAYs
7.Query a stored varray.
8.VARRAY of VARCHAR2 and Varray of number
9.Table of numbers and varray of numbers
10.Initialize the array and create two entries using the constructor
11.Reference elements in varray
12.assignments to varray elements, and the ORA-6532 and ORA-6533 errors.
13.ORA-06533: Subscript beyond count
14.Compare two varray variables
15.Constructs a two varrays and one nested table type in the database
16.Control varray index with if statement
17.Create type prices with a varray of number
18.Declare the varray with null values.
19.Declaring a VARRAY of scalar variable
20.Define a varray of integer with 3 rows
21.Define a varray of twelve strings.
22.Define a varray with a null element constructor and extends it one element at a time by a formula
23.Define a varray with a null element constructor and extends it one element at a time.
24.Define a varray with a three element constructor of null elements and attempt to populate it beyond three elements.
25.Define a varray with a three element constructor of null elements.
26.Hard code value in varray and use for loop to insert them to a table
27.Nested varray
28.Reference varray.count in for loop
29.Store 12 months in varray of string
30.exceeded maximum VARRAY limit
31.Assign values to subscripted members of the varray.
32.Check the size of a varray
33.Declare an array initialized as a no-element collection.
34.Extend with null element to the maximum limit size.
35.Initialization and assignment with a numeric index value to an associative array.
36.Initialization and assignment with a unique string index value to an associative array.
37.Associative array example
38.Assigns a value to the indexed value.
39.Avoid traversing an associative array where no elements are initialized.
40.Subscript index values begin at 1, not 0