Тип данных INTERVAL YEAR TO MONTH может иметь поля YEAR и MONTH.

Тип данных INTERVAL DAY TO SECOND может иметь поля DAY, HOUR, MINUTE и SECOND.
Фактическое подмножество полей, составляющих элемент любого типа интервала, определяется описателем интервала, и это подмножество называется точностью элемента.
Интервалы «год-месяц» могут взаимно сравниваться и назначаться только другим интервалам «год-месяц», и интервалы «день-время» могут взаимно сравниваться и назначаться только другим интервалам «день-время».
Пример типа данных INTERVAL YEAR TO MONTH

В типе данных INTERVAL YEAR TO MONTH хранится период времени с использованием полей YEAR и MONTH даты-времени. Тип данных INTERVAL YEAR TO MONTH задается следующим образом:
INTERVAL YEAR [(year_precision)] TO MONTH
где year_precision – количество разрядов в поле YEAR даты-времени. Значение year_precision по умолчанию равно 2.
Ограничение. Первое поле должно быть более значимым, чем замыкающее поле. Например, INTERVAL '0-1' MONTH TO YEAR является недопустимым.
Примеры
-
INTERVAL'123-2'YEAR(3)TO MONTHОбозначает интервал в 123 года и 2 месяца.
-
INTERVAL'123'YEAR(3)Обозначает интервал в 123 года и 0 месяцев.
-
INTERVAL'300'MONTH(3)Обозначает интервал в 300 месяцев.
-
INTERVAL'123'YEARВозвращает ошибку, так как точность по умолчанию равна 2 разрядам, а число «123» имеет 3 разряда.
Базой данных Oracle поддерживаются два типа данных для интервала: INTERVAL YEAR TO MONTH и INTERVAL DAY TO SECOND. Тип столбца, аргумент PL/SQL, переменная и тип возвращаемого значения должны принадлежать одному из этих двух типов данных. Однако, что касается литералов интервалов, системой распознаются другие типы ANSI-интервалов, например INTERVAL '2' YEAR или INTERVAL '10' HOUR. В этих случаях каждый интервал преобразуется в один из двух поддерживаемых типов.
В примере на рисунке создается таблица WARRANTY, которая содержит столбец warranty_time, принимающий тип данных INTERVAL YEAR(3) TO MONTH. В столбец вставляются разные значения, показывающие годы и месяцы для различных продуктов. Когда эти строки извлекаются из таблицы, видно значение года, отделенное от значения месяцев дефисом (-).
Пример типа данных INTERVAL DAY TO SECOND

В примере на рисунке создается таблица лабораторного задания со столбцом test_time, значения которого принадлежат типу данных INTERVAL DAY TO SECOND. Затем в таблицу вставляется значение «90 00:00:00», чтобы указать 90 дней, 0 часов, 0 минут, 0 секунд, и интервал INTERVAL '6 03:30:16' DAY.TO SECOND, чтобы указать 6 дней, 3 часа, 30 минут и 16 секунд. Инструкция SELECT показывает, как эти данные отображаются в базе данных.
Далее: Использование коррелированных подзапросов