SELECTing Only One Column in the Composite : Select « Object Oriented « Oracle PL/SQL Tutorial






SQL>
SQL>
SQL> CREATE OR REPLACE TYPE ADDRESS_OBJ as OBJECT(
  2  street VARCHAR2(20),
  3  city VARCHAR2(20),
  4  state CHAR(2),
  5  zip CHAR(5))
  6  /

Type created.

SQL>
SQL> CREATE TABLE emp (
  2  empno NUMBER(3),
  3  name VARCHAR2(20),
  4  address ADDRESS_OBJ)
  5  /

Table created.

SQL>
SQL> INSERT INTO emp VALUES (101, 'A',ADDRESS_OBJ('1 St.','M','AL','36608'));

1 row created.

SQL>
SQL> select * from emp;

     EMPNO NAME                 ADDRESS(STREET, CITY, STATE, ZIP)
---------- -------------------- --------------------------------------------------
       101 A                    ADDRESS_OBJ('1 St.', 'M', 'AL', '36608')

SQL>
SQL> select address from emp;

ADDRESS(STREET, CITY, STATE, ZIP)
--------------------------------------------------
ADDRESS_OBJ('1 St.', 'M', 'AL', '36608')

SQL> SELECT name, e.address.city
  2  FROM emp e;

NAME                 ADDRESS.CITY
-------------------- --------------------
A                    M

SQL>
SQL>
SQL> drop table emp;

Table dropped.

SQL>
SQL> drop type ADDRESS_OBJ;

Type dropped.

SQL>
SQL>
SQL>








32.11.Select
32.11.1.Selecting Rows from the Table with object type column
32.11.2.Select an individual column object from a table
32.11.3.Querying Rows from the object Table
32.11.4.SELECTing Only One Column in the Composite
32.11.5.COLUMN Formatting in SELECT for Object
32.11.6.ORA-00932: inconsistent datatypes: expected REF
32.11.7.Query table column with user defined type
32.11.8.Use table function to convert type to a 'table'
32.11.9.Create type and use it in inner query
32.11.10.Use user-defined type to combine query logic