use to_char more than once to create long date format : TO_CHAR « Conversion Functions « Oracle PL/SQL Tutorial






SQL>
SQL>
SQL> create table gift(
  2           gift_id                integer         primary key
  3          ,emp_id                integer
  4          ,register_date              date not null
  5          ,total_price        number(7,2)
  6          ,deliver_date           date
  7          ,deliver_time           varchar2(7)
  8          ,payment        varchar2(2)
  9          ,emp_no                 number(3,0)
 10          ,deliver_name           varchar2(35)
 11          ,message        varchar2(100)
 12  );

Table created.

SQL>
SQL> insert into gift(gift_id,emp_id,register_date,total_price,deliver_date,deliver_time,payment,emp_no,deliver_name,message)values
  2                 (1,1,'14-Feb-1999', 123.12, '14-Feb-1999', '12 noon', 'CA',1, null, 'Happy Birthday to you');

1 row created.

SQL> insert into gift(gift_id  ,emp_id ,register_date ,total_price ,deliver_date ,deliver_time ,payment ,emp_no,deliver_name ,message)values
  2                 (2,1,'14-Feb-1999', 50.98, '14-feb-1999', '1 pm', 'CA',7, 'name1', 'Happy Birthday');

1 row created.

SQL> insert into gift(gift_id  ,emp_id ,register_date ,total_price ,deliver_date ,deliver_time,payment ,emp_no,deliver_name ,message )values
  2                 (3, 2,'14-Feb-1999', 35.99, '14-feb-1999', '1 pm', 'VS',2, 'Tom', 'Happy Birthday');

1 row created.

SQL> insert into gift(gift_id  ,emp_id ,register_date ,total_price ,deliver_date ,deliver_time,payment ,emp_no,deliver_name ,message )values
  2                 (4, 2,'14-Feb-1999', 19.95, '14-feb-1999', '5 pm', 'CA',2, 'Mary', 'Happy Birthday');

1 row created.

SQL> insert into gift(gift_id  ,emp_id ,register_date ,total_price ,deliver_date ,deliver_time,payment ,emp_no,deliver_name ,message)values
  2                 (5, 6,'4-mar-1999', 10.95, '5-mar-1999', '4:30 pm', 'VS', 2, 'Jack', 'Happy Birthday');

1 row created.

SQL>
SQL>
SQL> select gift_id, 'Order placed on the ' ||
  2         to_char(register_date, 'fmddth') || ' day of '||
  3         to_char(register_date, 'fmMonth') || ', ' ||
  4         to_char(register_date, 'yyyy') as "Order date"
  5    from gift;

   GIFT_ID Order date
---------- -----------------------------------------------
         1 Order placed on the 14th day of February, 1999
         2 Order placed on the 14th day of February, 1999
         3 Order placed on the 14th day of February, 1999
         4 Order placed on the 14th day of February, 1999
         5 Order placed on the 4th day of March, 1999

5 rows selected.

SQL>
SQL>
SQL>
SQL> drop table gift;

Table dropped.








15.7.TO_CHAR
15.7.1.Format Parameters
15.7.2.TO_CHAR(x [, format]) converts x to a string.
15.7.3.TO_CHAR() will return a string of pound characters (#) if you try and format a number that contains too many digits for the format you have provided.
15.7.4.Use TO_CHAR() to convert columns containing numbers to strings.
15.7.5.TO_CHAR(12345.67, '99,999.99') (1)
15.7.6.TO_CHAR(12345.67, '99999.99') (2)
15.7.7.TO_CHAR(-12345.67, '99,999.99') (3)
15.7.8.TO_CHAR(12345.67, '099,999.99') (4)
15.7.9.TO_CHAR(12345.67, '99,999.9900')
15.7.10.TO_CHAR(12345.67, '$99,999.99')
15.7.11.TO_CHAR(0.67, 'B9.99')
15.7.12.TO_CHAR(12345.67, 'C99,999.99')
15.7.13.TO_CHAR(12345.67, '99999D99')
15.7.14.TO_CHAR(12345.67, '99999.99EEEE')
15.7.15.TO_CHAR(0012345.6700, 'FM99999.99')
15.7.16.TO_CHAR(12345.67, '99999G99')
15.7.17.TO_CHAR(12345.67, 'L99,999.99')
15.7.18.TO_CHAR(-12345.67, '99,999.99MI')
15.7.19.TO_CHAR(-12345.67, '99,999.99PR')
15.7.20.TO_CHAR(2007, 'RN')
15.7.21.TO_CHAR(12345.67, 'TM')
15.7.22.TO_CHAR(12345.67, 'U99,999.99')
15.7.23.TO_CHAR(12345.67, '99999V99')
15.7.24.TO_CHAR(last_ddl_time,'dd-mon-yyyy hh24:mi')
15.7.25.to_char(sysdate,'hh24:mi:ss') as time
15.7.26.to_char(to_date('01/01/2006','dd/mm/yyyy'),is on Day') as new_year_2006
15.7.27.to_char(sysdate, 'Day', 'nls_date_language=Dutch')
15.7.28.to_char(sysdate,'DAY dy Dy')
15.7.29.to_char(sysdate,'MONTH mon') as month
15.7.30.to_char(bdate,'fmMonth ddth, yyyy')
15.7.31.use to_char more than once to create long date format