Функции даты и времени
Поставщик данных .NET Framework для SQL Server (SqlClient) предоставляет функции даты и времени, которые выполняют операции с входным значением типа System.DateTime
и возвращают значение типа string
System.DateTime
или числовое значение. Эти функции находятся в пространстве имен SqlServer, которое доступно при использовании SqlClient. Свойство пространства имен поставщика позволяет платформе Entity Framework узнать, какой префикс используется поставщиком для конкретных конструкций, таких как типы или функции. В следующей таблице показаны функции даты и времени SqlClient.
Function | Description |
---|---|
DATEADD(datepart, number, date) |
возвращает новое значение типа DateTime , получаемое за счет добавления интервала к указанной дате.Аргументы datepart : значение String , указывающее часть даты, для которой должно быть возвращено новое значение.number : значение Int32 , Int64 , Decimal или Double , используемое для увеличения значения datepart .date: Выражение, возвращающее DateTime или DateTimeOffset Time с точностью = [0-7], или символьную строку в формате даты.Возвращаемое значение Новое значение DateTime , DateTimeOffset или Time с точностью = [0-7].Пример SqlServer.DATEADD('day', 22, cast('6/9/2006' as DateTime)) |
DATEDIFF(datepart,startdate,enddate) |
Возвращает числовое значение границ дат или времени между двумя указанными датами. Аргументы datepart : значение String , представляющее часть даты, по которой должна быть вычислена разность.startdate : начальная дата для вычисления выражения, которое возвращает значение DateTime , DateTimeOffset или Time с точностью = [0-7], либо символьная строка в формате даты.enddate: Конечной датой вычисления является выражение, возвращающее DateTime значение или DateTimeOffset Time значение с точностью = [0-7], или символьная строка в формате даты.Возвращаемое значение Объект Int32 .Пример SqlServer.DATEDIFF('day', cast('6/9/2006' as DateTime), cast('6/20/2006' as DateTime)) |
DATENAME(datepart, date) |
Возвращает символьную строку, содержащую заданную часть указанной даты. Аргументы datepart : значение String , указывающее часть даты, для которой должно быть возвращено новое значение.date : выражение, которое возвращает значение DateTime, , DateTimeOffset или Time с точностью = [0-7], либо символьная строка в формате даты.Возвращаемое значение Символьная строка, содержащая заданную часть указанной даты. Пример SqlServer.DATENAME('year', cast('6/9/2006' as DateTime)) |
DATEPART(datepart, date) |
Возвращает целое число, представляющее указанную часть даты. Аргументы datepart : значение String , указывающее часть даты, для которой должно быть возвращено новое значение.date : выражение, которое возвращает значение DateTime, , DateTimeOffset, или Time с точностью = [0-7], либо символьная строка в формате даты.Возвращаемое значение Заданная часть указанной даты в виде значения типа Int32 .Пример SqlServer.DATEPART('year', cast('6/9/2006' as DateTime)) |
DAY(date) |
Возвращает день указанной даты в виде целого числа. Аргументы date :Выражение типа DateTime или DateTimeOffset с точностью = 0-7.Возвращаемое значение День указанной даты в виде значения типа Int32 .Пример SqlServer.DAY(cast('6/9/2006' as DateTime)) |
GETDATE() |
Возвращает текущую дату и время во внутреннем формате SQL Server для значений datetime. Возвращаемое значение Текущее значение системных даты и времени в виде значения типа DateTime с точностью 3.Пример SqlServer.GETDATE() |
GETUTCDATE() |
Возвращает значение datetime в формате UTC (универсальное синхронизированное время или среднее время по Гринвичу). Возвращаемое значение Значение DateTime с точностью 3 в формате UTC.Пример SqlServer.GETUTCDATE() |
MONTH(date) |
Возвращает месяц заданной даты в виде значения целочисленного типа. Аргументы date :Выражение типа DateTime или DateTimeOffset с точностью = 0-7.Возвращаемое значение Месяц заданной даты в виде значения типа Int32 .Пример SqlServer.MONTH(cast('6/9/2006' as DateTime)) |
YEAR(date) |
Возвращает год заданной даты в виде значения целочисленного типа. Аргументы date :Выражение типа DateTime или DateTimeOffset с точностью = 0-7.Возвращаемое значение Год указанной даты в виде значения типа Int32 .Пример SqlServer.YEAR(cast('6/9/2006' as DateTime)) |
SYSDATETIME() |
Возвращает значение DateTime с точностью 7.Возвращаемое значение Значение DateTime с точностью 7.Пример SqlServer.SYSDATETIME() |
SYSUTCDATE() |
Возвращает значение datetime в формате UTC (универсальное синхронизированное время или среднее время по Гринвичу). Возвращаемое значение Значение типа DateTime с точностью 7 в формате UTC.Пример SqlServer.SYSUTCDATE() |
SYSDATETIMEOFFSET() |
Возвращает значение типа DateTimeOffset с точностью 7.Возвращаемое значение Значение типа DateTimeOffset с точностью 7 в формате UTC.Пример SqlServer.SYSDATETIMEOFFSET() |
Дополнительные сведения о функциях даты и времени, поддерживаемых SqlClient, см. в разделе "Типы и функции данных даты и времени" (Transact-SQL).