COLUMN salary FORMAT $99.99 HEADING 'Salary' JUSTIFY RIGHT : COLUMN « SQL PLUS Session Environment « Oracle PL/SQL Tutorial






SQL>
SQL>
SQL> -- create demo table
SQL> create table Employee(
  2    ID                 VARCHAR2(4 BYTE)         NOT NULL,
  3    First_Name         VARCHAR2(10 BYTE),
  4    Last_Name          VARCHAR2(10 BYTE),
  5    Start_Date         DATE,
  6    End_Date           DATE,
  7    Salary             Number(8,2),
  8    City               VARCHAR2(10 BYTE),
  9    Description        VARCHAR2(15 BYTE)
 10  )
 11  /

Table created.

SQL>
SQL> -- prepare data
SQL> insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary,  City,       Description)
  2               values ('01','Jason',    'Martin',  to_date('19960725','YYYYMMDD'), to_date('20060725','YYYYMMDD'), 1234.56, 'Toronto',  'Programmer')
  3  /

1 row created.

SQL> insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary,  City,       Description)
  2                values('02','Alison',   'Mathews', to_date('19760321','YYYYMMDD'), to_date('19860221','YYYYMMDD'), 6661.78, 'Vancouver','Tester')
  3  /

1 row created.

SQL> insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary,  City,       Description)
  2                values('03','James',    'Smith',   to_date('19781212','YYYYMMDD'), to_date('19900315','YYYYMMDD'), 6544.78, 'Vancouver','Tester')
  3  /

1 row created.

SQL> insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary,  City,       Description)
  2                values('04','Celia',    'Rice',    to_date('19821024','YYYYMMDD'), to_date('19990421','YYYYMMDD'), 2344.78, 'Vancouver','Manager')
  3  /

1 row created.

SQL> insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary,  City,       Description)
  2                values('05','Robert',   'Black',   to_date('19840115','YYYYMMDD'), to_date('19980808','YYYYMMDD'), 2334.78, 'Vancouver','Tester')
  3  /

1 row created.

SQL> insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary, City,        Description)
  2                values('06','Linda',    'Green',   to_date('19870730','YYYYMMDD'), to_date('19960104','YYYYMMDD'), 4322.78,'New York',  'Tester')
  3  /

1 row created.

SQL> insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary, City,        Description)
  2                values('07','David',    'Larry',   to_date('19901231','YYYYMMDD'), to_date('19980212','YYYYMMDD'), 7897.78,'New York',  'Manager')
  3  /

1 row created.

SQL> insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary, City,        Description)
  2                values('08','James',    'Cat',     to_date('19960917','YYYYMMDD'), to_date('20020415','YYYYMMDD'), 1232.78,'Vancouver', 'Tester')
  3  /

1 row created.

SQL>
SQL>
SQL>
SQL> -- display data in the table
SQL> select * from Employee
  2  /


ID   FIRST_NAME LAST_NAME  START_DAT END_DATE      SALARY CITY       DESCRIPTION
---- ---------- ---------- --------- --------- ---------- ---------- ---------------
01   Jason      Martin     25-JUL-96 25-JUL-06    1234.56 Toronto    Programmer
02   Alison     Mathews    21-MAR-76 21-FEB-86    6661.78 Vancouver  Tester
03   James      Smith      12-DEC-78 15-MAR-90    6544.78 Vancouver  Tester
04   Celia      Rice       24-OCT-82 21-APR-99    2344.78 Vancouver  Manager
05   Robert     Black      15-JAN-84 08-AUG-98    2334.78 Vancouver  Tester
06   Linda      Green      30-JUL-87 04-JAN-96    4322.78 New York   Tester
07   David      Larry      31-DEC-90 12-FEB-98    7897.78 New York   Manager
08   James      Cat        17-SEP-96 15-APR-02    1232.78 Vancouver  Tester

8 rows selected.

SQL> COLUMN salary FORMAT $99.99 HEADING 'Salary' JUSTIFY RIGHT;
SQL>
SQL> select * from employee;


ID   FIRST_NAME LAST_NAME  START_DAT END_DATE   Salary CITY       DESCRIPTION
---- ---------- ---------- --------- --------- ------- ---------- ---------------
01   Jason      Martin     25-JUL-96 25-JUL-06 ####### Toronto    Programmer
02   Alison     Mathews    21-MAR-76 21-FEB-86 ####### Vancouver  Tester
03   James      Smith      12-DEC-78 15-MAR-90 ####### Vancouver  Tester
04   Celia      Rice       24-OCT-82 21-APR-99 ####### Vancouver  Manager
05   Robert     Black      15-JAN-84 08-AUG-98 ####### Vancouver  Tester
06   Linda      Green      30-JUL-87 04-JAN-96 ####### New York   Tester
07   David      Larry      31-DEC-90 12-FEB-98 ####### New York   Manager
08   James      Cat        17-SEP-96 15-APR-02 ####### Vancouver  Tester

8 rows selected.

SQL> clear columns;
columns cleared
SQL>
SQL>
SQL> -- clean the table
SQL> drop table Employee
  2  /

Table dropped.

SQL>
SQL> clear columns;
columns cleared
SQL>
SQL>








29.4.COLUMN
29.4.1.Reporting Tools in Oracle's SQL*Plus: COLUMN
29.4.2.Formatting Columns
29.4.3.COLUMN format in action: COLUMN City FORMAT a6
29.4.4.Shorten the varchar column format with COLUMN command:
29.4.5.For alphanumeric columns, if the column is too short, it will be displayed on multiple lines.
29.4.6.Format the number column with COLUMN salary FORMAT 99999999
29.4.7.If the column format is too small for a number column, '#' will be used
29.4.8.FORMAT number column as 999,999
29.4.9.If there are decimals or if commas are desired, use the '99999.99'
29.4.10.Numbers can also be output with leading zeros or dollar signs
29.4.11.Add dollar signs to the output with '$990.99'
29.4.12.COLUMN Salary FORMAT 909.99
29.4.13.To undo all column formatting: CLEAR COLUMNS
29.4.14.Column LIKE another Column
29.4.15.Two digits: COLUMN id FORMAT 99
29.4.16.COLUMN first_name HEADING FIRST_NAME FORMAT A13 WORD_WRAPPED
29.4.17.COLUMN first_name FORMAT A13 WORD_WRAPPED
29.4.18.COLUMN first_name FORMAT A10 WORD_WRAP HEADING 'Name' JUSTIFY CENTER
29.4.19.COLUMN salary FORMAT $99.99 HEADING 'Salary' JUSTIFY RIGHT
29.4.20.Copy column format with 'col ... like'
29.4.21.format interval type column
29.4.22.SET string to display when value is NULL