Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

К9-12В. Вопросы и ответы к ГОСам 2013 / Базы данных / 10. Работа с датами в SQL. Левые и правые соединения. Работа с NULL значениями. Выборка уникальных записей. Примеры

.docx
Скачиваний:
66
Добавлен:
10.05.2014
Размер:
77.71 Кб
Скачать
  1. Работа с датами в SQL. Левые и правые соединения. Работа с NULL значениями. Выборка уникальных записей. Примеры.

Соединение таблиц

элемент1 [тип_соединения] JOIN элемент2 ON условие_соединения

Элементом может быть:

Ссылка на таблицу.

Соединение таблиц.

Вложенное табличное выражение.

Работа с NULL значениями:

1) COALESCE (expr1, expr2, … exprN) – возвращает первый NOT NULL аргумент, т.е. для трех аргументов аналогично NVL(expr1,NVL(expr2, expr3))2) Создание NULL-значений

2) NULLIF (<выр>, <значение>)

Если <выр>=<значение>, то функция возвращает NULL, иначе <выр>, которое обычно является именем столбца, например NULLIF(1,1), всегда возвращает NULL.

3) Особенности NULL-значений в предикатах сравнения

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

4) is null , is not null

5) NVL(expr1, expr2) – в случае, если expr1 IS NOT NULL, выводится expr1, в противном случае – expr2

Уникальные записи: DISTINCT

Работа с датами

Для ORACLE

Тип данных DATE. Исходный тип данных для предоставления даты и времени.В нем в виде 7-байтового значения фиксированной длины хранятся: год, месяц, день, часы, минуты,секунды.

Тип TIMESTAMP: как DATE + доли секунды.

TIMESTAMP WITH TIMEZONE – с хранением таймзоны

TIMESTAMP WITH LOCAL TIMEZONE

Table 4-1 Datetime Functions Designed for the DATE Datatype

Function

Description

ADD_MONTHS

Returns the date d plus n months

LAST_DAY

Returns the last day of the month that contains date

MONTHS_BETWEEN

Returns the number of months between date1 and date2

NEW_TIME

Returns the date and time in zone2 time zone when the date and time in zone1 time zone are date

Note: This function takes as input only a limited number of time zones. You can have access to a much greater number of time zones by combining the FROM_TZ function and the datetime expression.

NEXT_DAY

Returns the date of the first weekday named by char that is later than date

ROUND (date)

Returns date rounded to the unit specified by the fmt format model

TRUNC (date)

Returns date with the time portion of the day truncated to the unit specified by the fmt format model

SYSDATE

Returns the date and time of the operating system on which the database resides, taking into account the time zone of the database server's operating system that was in effect when the database was started