class DarkRaha extends com { // разработка приложений
            String a="Главная" b="Контакты" c="О сайте"
};

основы sql

введение
структура БД
инструментарий
комментарий
идентификаторы
обзор типов данных
интервалы времени
литералы
операции и выражения
обзор функций
преобразование типов
создание таблицы
изменение, удаление таблицы
вставка данных
изменение записей
удаление записей
выбор данных
соединения
агрегатные функции, группировка данных
операции над выборками
добавление итогов
нумерация записей
уникальность первич. ключа
индексы
представления

Dynamic SQL

прочее

Справочник по SQL

Интервал времени

Синтаксис и реализация интервалов отличается на разных СУБД.

Oracle

Данный тип разделен на два: интервал по годам и интервал по дням. В первом случае можно указать точность интервала только до месяца (по умолчанию год). Во втором случае до различных долей секунды. Кроме этого указывается точность значения временных промежутков в количестве цифр. Если точность не совпадает, то выводится сообщение об ошибке.


-- годовые интервалы
-- интервал в 99 лет
INTERVAL '99' YEAR

-- интервал в 999 лет в скобках
-- указана точность для годов
INTERVAL '999' YEAR(3)

-- интервал в 999 лет и 3 месяца в скобках
-- после TO указывается точность самого промежутка
-- месяцы указываются через -
INTERVAL '999-3' YEAR(3) TO MONTH

-- интервал в 99 лет и два месяца
-- это отрицательный интервал
INTERVAL '-99-2' YEAR TO MONTH

-- дневные интервалы
-- интервал в 200 дней
INTERVAL '200' DAY(3)
 
-- интервал в 200 дней и 6 часов
INTERVAL '200 6' DAY(3) TO HOUR

-- интервал в 200 дней, 6 часов
-- и 10 минут
INTERVAL '200 6:10' DAY(3) TO MINUTE

-- интервал в 200 дней, 6 часов,
-- 10 минут и 7 секунд
INTERVAL '200 6:10:7' DAY(3) TO SECOND

-- интервал в 200 дней, 6 часов,
-- 10 минут, 7 секунд и 333 милисекунды
INTERVAL '200 6:10:7.333' DAY(3) TO SECOND(3)

-- пример интервала в запросе
-- выборка интервала в два дня
select INTERVAL '2' day from dual;

PostgreSQL

интервалы указываются в виде строки, в которой перечисляются значение и тип промежутка:

Слова можно употреблять и во множественном числе. Если интервал начинается с дней, то можно использовать короткий формат строки как в Oracle для дневных интервалов.


-- интервал в три года
INTERVAL '3 year'

-- интервал в три года и три дня
INTERVAL '3 years 3 day'

-- интервал в три года, три дня
-- и 3 минуты
INTERVAL '3 year 3 day 3 minute'

-- интервал в 3 дня, 7 часов,
-- 7 минут и 5 секунд
INTERVAL '3 7:07:05' 

-- пример интервала в запросе
-- выборка интервала в два дня
select INTERVAL '2 day'; 

MySQL

Только сложные интервалы, состоящие из более одного типа промежутков, указываются в строке. Для этих целей введены дополнительные по сравнению с PostgreSQL имена для промежутков:

MySQL интервалы используются в выражениях с временными типами данных, использовать их в качестве конечного типа для столбцов запрещено.


-- интервал в три года
INTERVAL 3 year

-- интервал в 3 дня, 7 часов,
-- 7 минут и 5 секунд
INTERVAL '3 7:07:05' day_second

-- пример интервала в запросе
-- выборка интервала в два дня
-- ошибка, столбец не может быть типа INTERVAL
select INTERVAL '2 day'; 

-- правильно, к дате прибавляем интервал
select date '2009-01-01'+INTERVAL '3 7:07:05' day_second

Рейтинг@Mail.ru