Функции Transact-SQL для работы со строками и данными типа даты/времениФункции T-SQL для работы со значениями даты и времениФункция DATEADD стр. 1 |
||||||||||||||||||||||||||||
Функция DATEADD (datepart, number, date) возвращает значение типа datetime, которое получается добавлением к дате date количества интервалов типа datepart, равного number (целое число). Например, мы можем к заданной дате добавить любое число лет, дней, часов, минут и т. д. Допустимые значения аргумента datepart приведены ниже в таблице и взяты из электронной документации к Cистема управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Язык структурированных запросов) — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. SQL Server — Books On Line (BOL).
Пусть сегодня 28.10.2005, и мы хотим узнать, какой день будет через неделю. Мы можем написать: а можем и так: В результате получим одно и то же значение; что-то типа 2005-11-04 00:11:28.683. Однако мы не можем в этом случае написать: и не потому, что четверть месяца не равна в точности неделе, а потому, что дробная часть значения аргумента datepart отбрасывается, и мы получим 0 вместо одной четвертой и, как следствие, текущий день. Кроме того, мы можем использовать вместо CURRENT_TIMESTAMP функцию T-SQL (Transact-SQL) — процедурное расширение языка SQL, используемое для программирования на стороне сервера в Microsoft SQL Server и Sybase ASE.T-SQL GETDATE() с тем же самым эффектом. Наличие двух идентичных функций поддерживается, видимо, в ожидании последующего развития стандарта. Пример 7.1.1 Определить, какой будет день через неделю после последнего полета.
Примечание:
В примерах данной главы используется база данных «Аэрофлот». Описание этой схемы и всех остальных схем, используемых в настоящее время на сайте для решения задач, можно найти в Примечании 1.
Применение подзапроса в качестве аргумента допустимо, так как этот подзапрос возвращает единственное значение типа datetime. Рекомендуемые упражнения: 94
|