Using the INTERVAL DAY TO SECOND Type : Time Interval « SQL Data Types « Oracle PL/SQL Tutorial






INTERVAL DAY TO SECOND type stores time intervals measured in days and seconds.

SQL>
SQL> CREATE TABLE myTable (
  2    id INTEGER,
  3    duration INTERVAL DAY(3) TO SECOND (4)
  4  );

Table created.

SQL>
SQL>
SQL> desc myTable;
 Name          Null?    Type
 ID                     NUMBER(38)
 DURATION               INTERVAL DAY(3) TO SECOND(4)

SQL>
SQL> drop table myTable;

Table dropped.

A precision of 3 for the day and a precision of 4 for the fractional seconds of the duration column means up to three digits may be stored for the day of the interval and up to four digits to the right of the decimal point for the fractional seconds.

An INTERVAL DAY TO SECOND literal value:

  1. INTERVAL '[+|-][d] [h[:m[:s]]]' [DAY[(days_precision)]])
  2. [TO HOUR | MINUTE | SECOND[(seconds_precision)]]

where

  1. + or - is an optional indicator that specifies whether the time interval is positive or negative (default is positive).
  2. d is the number of days for the interval.
  3. h is the optional number of hours for the interval; if you supply days and hours, you must include TO HOUR in your literal.
  4. m is the optional number of minutes for the interval; if you supply days and minutes, you must include TO MINUTES in your literal.
  5. s is the optional number of seconds for the interval; if you supply days and seconds you must include TO SECOND in your literal.
  6. days_precision is the optional precision for the days (default is 2).
  7. seconds_precision is the optional precision for the fractional seconds (default is 6).

Quote from:

Oracle Database 10g SQL (Osborne ORACLE Press Series) (Paperback)

# Paperback: 608 pages

# Publisher: McGraw-Hill Osborne Media; 1st edition (February 20, 2004)

# Language: English

# ISBN-10: 0072229810

# ISBN-13: 978-0072229813









10.10.Time Interval
10.10.1.Using Time Intervals
10.10.2.interval type column
10.10.3.Format interval type column
10.10.4.Insert value to interval type column
10.10.5.Use TIMESTAMP in insert statement to add value to interval type column
10.10.6.INTERVAL '1' YEAR: Interval of 1 year
10.10.7.INTERVAL '11' MONTH: Interval of 11 months
10.10.8.INTERVAL '14' MONTH: Interval of 14 months (equivalent to 1 year 2 months)
10.10.9.INTERVAL '1-3' YEAR TO MONTH: Interval of 1 year 3 months
10.10.10.INTERVAL '0-5' YEAR TO MONTH: Interval of 0 years 5 months
10.10.11.INTERVAL '123' YEAR(3) TO MONTH: Interval of 123 years with a precision of 3 digits
10.10.12.INTERVAL '-1-5' YEAR TO MONTH: A negative interval of 1 year 5 months
10.10.13.INTERVAL '1234' YEAR(3):
10.10.14.Using the INTERVAL DAY TO SECOND Type
10.10.15.INTERVAL '3' DAY: Interval of 3 days
10.10.16.INTERVAL '2' HOUR: Interval of 2 hours
10.10.17.INTERVAL '25' MINUTE: Interval of 25 minutes
10.10.18.INTERVAL '45' SECOND: Interval of 45 seconds
10.10.19.INTERVAL '3 2:25:45' DAY TO SECOND: Interval of 3 days 2 hours 25 minutes 45 seconds
10.10.20.INTERVAL '123 2:25:45.12' DAY(3) TO SECOND(2): Interval of 123 days 2 hours 25 minutes 45.12 seconds; the precision for days is 3 digits and the precision for the fractional seconds is 2 digits
10.10.21.INTERVAL '3 2:00:45' DAY TO SECOND: Interval of 3 days 2 hours 0 minutes 45 seconds
10.10.22.INTERVAL '-3 2:25:45' DAY TO SECOND: Negative interval of 3 days 2 hours 25 minutes 45 seconds
10.10.23.INTERVAL '1234 2:25:45' DAY(3) TO SECOND: Invalid interval because the number of digits in the days exceeds the specified precision of 3
10.10.24.INTERVAL '123 2:25:45.123' DAY TO SECOND(2): Invalid interval because the number of digits in the fractional seconds exceeds the specified precision of 2