Oracle to_date () function usage introduction, oracleto_date

Source: Internet
Author: User
Tags oracle documentation time in milliseconds

Oracle to_date () function usage introduction, oracleto_date

In Oracle databases, the Oracle to_date () function is a frequently used function. The following describes the usage of the Oracle to_date () function in detail, hoping to enlighten you.

To_date () and 24-hour notation and display of mm minutes:

1. When Oracle's to_date function is used for date conversion, many Java programmers may directly convert data using the format "yyyy-MM-dd HH: mm: ss, however, an error occurs in Oracle: "ORA 01810 format code appears twice ".

Select to_date ('1970-01-01 13:14:20 ', 'yyyy-MM-dd HH24: mm: ss') from dual;

For example:
The reason is that SQL statements are case-insensitive. MM and mm are considered to be the same format code, so Oracle SQL uses mi instead of minutes.

Select to_date ('1970-01-01 13:14:20 ', 'yyyy-MM-dd HH24: mi: ss') from dual;

2. Another 24-hour format is used to display HH24.

Select to_char (sysdate, 'yyyy-MM-dd HH24: mi: ss') from dual; // mi is minute
Select to_char (sysdate, 'yyyy-MM-dd HH24: mm: ss') from dual; // mm displays the month

Description of the to_date parameter in oracle

1. Description of date format parameters

D. day of the week
The name of DAY, which is filled with spaces to 9 characters.
Day of DD month
The day of the year in DDD
Short Name of DY day
Week of the Year of the iw iso Standard
Four-digit year of the iyyy iso Standard
YYYY four-digit year
Last three digits of YYY, YY, and Y years, two digits, one digit
HH hours, at 12 hours
HH24 hours, in 24 hours
MI score
SS seconds
MM Month
Abbreviated month of Mon
Full name of Month
W the week of the month
The day of the week in WW 1. Date interval operation
Current Time minus 7 minutes
Select sysdate, sysdate-interval '7' MINUTE from dual
Current Time minus 7 hours
Select sysdate-interval '7' hour from dual
Current Time minus 7 days
Select sysdate-interval '7' day from dual
Current Time minus July
Select sysdate, sysdate-interval '7' month from dual
Current Time minus 7 years
Select sysdate, sysdate-interval '7' year from dual
Time Interval multiplied by a number
Select sysdate, sysdate-8 * interval '2' hour from dual

2. Date-to-character operations

select sysdate,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual  select sysdate,to_char(sysdate,'yyyy-mm-dd hh:mi:ss') from dual  select sysdate,to_char(sysdate,'yyyy-ddd hh:mi:ss') from dual  select sysdate,to_char(sysdate,'yyyy-mm iw-d hh:mi:ss') from dual  

Refer to the oracle documentation (ORACLE901DOC/SERVER.901/A90125/SQL _ELEMENTS4.HTM #48515)

3. Character-to-date operations

Select to_date ('1970-10-17 21:15:37 ', 'yyyy-mm-dd hh24: mi: ss') from dual

The usage is similar to that of to_char.

4. Use of the trunk/ROUND Function

select trunc(sysdate ,'YEAR') from dual  select trunc(sysdate ) from dual  select to_char(trunc(sysdate ,'YYYY'),'YYYY') from dual 

5. oracle has millisecond-level data types

-- Returns the current time year month day hour minute second millisecond select to_char (current_timestamp (5), 'dd-MON-YYYY HH24: MI: SSxFF ') from dual; -- returns the current time in milliseconds, the precision after the second can be specified (max = 9) select to_char (current_timestamp (9), 'mi: SSxFF ') from dual;

6. computing program running time (MS)

declare  type rc is ref cursor;  l_rc rc;  l_dummy all_objects.object_name%type;  l_start number default dbms_utility.get_time;  begin  for I in 1 .. 1000  loop  open l_rc for  'select object_name from all_objects '||  'where object_id = ' || i;  fetch l_rc into l_dummy;  close l_rc;  end loop;  dbms_output.put_line  ( round( (dbms_utility.get_time-l_start)/100, 2 ) ||  ' seconds...' );  end; 


SQL function TO DATE usage

TO_DATE is to convert the data type to the Data Type of DATE, and then there is a table.
For the VARCHAR type, only strings can be read during reading. Data cannot be read by date.

The to_date function in oracle

No need to worry about the DDMONYY format.
To_date is very powerful now. Your 07JUL11 format can be recognized directly. If you write 070711, you can directly recognize it.
070711 the default value is July 7. This example is not easy to express.
For example, if you write 070611, the default value of oracle is June 7.
If you want to express the time as 070611, you need to add to_date. to_date ('123', 'mmddyy') is.
This is probably the case.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.