Compartir a través de


Funciones de fecha y hora

El Proveedor de datos .NET Framework para SQL Server (SqlClient) proporciona funciones de fecha y hora que realizan operaciones en un valor de entrada System.DateTime y devuelven un resultado string, numérico o System.DateTime. Estas funciones están en el espacio de nombres SqlServer, que está disponible al utilizar SqlClient. La propiedad del espacio de nombres de un proveedor permite a Entity Framework detectar qué prefijo usa este proveedor para estructuras concretas, como tipos y funciones. En la tabla siguiente se muestran las funciones de fecha y hora de SqlClient.

Función Descripción
DATEADD(datepart, number, date) Devuelve un valor DateTime nuevo que se basa en sumar un intervalo a la fecha especificada.

Argumentos

datepart: valor de tipo String que representa qué parte de la fecha se devuelve como el valor nuevo.

number: valor de tipo Int32, Int64, Decimal o Double que se usa para incrementar el valor de datepart.

date:: expresión que devuelve un valor de tipo DateTime, DateTimeOffset o Time con precisión = [0-7], o una cadena de caracteres en un formato de fecha.

Valor devuelto

Valor de tipo DateTime, DateTimeOffset o Time nuevo con precisión = [0-7].

Ejemplo

SqlServer.DATEADD('day', 22, cast('6/9/2006' as DateTime))
DATEDIFF(datepart,startdate,enddate) Devuelve el número de límites de fecha y hora entre dos fechas especificadas.

Argumentos

datepart: String que representa la parte de la fecha para calcular la diferencia.

startdate: la fecha de comienzo para el cálculo es una expresión que devuelve un valor de tipo DateTime, DateTimeOffset o Time con precisión = [0-7], o una cadena de caracteres en formato de fecha.

enddate:: la fecha final del cálculo es una expresión que devuelve un valor de tipo DateTime, DateTimeOffset o Time con precisión = [0-7], o una cadena de caracteres en formato de fecha.

Valor devuelto

Una clase Int32.

Ejemplo

SqlServer.DATEDIFF('day', cast('6/9/2006' as DateTime),

cast('6/20/2006' as DateTime))
DATENAME(datepart, date) Devuelve una cadena de caracteres que representa el datepart especificado de la fecha especificada.

Argumentos

datepart: valor de tipo String que representa qué parte de la fecha se devuelve como el valor nuevo.

date: expresión que devuelve un valor de tipo DateTime,DateTimeOffset o Time con precisión = [0-7], o una cadena de caracteres en un formato de fecha.

Valor devuelto

La cadena de caracteres que representa el datepart especificado de la fecha especificada.

Ejemplo

SqlServer.DATENAME('year', cast('6/9/2006' as DateTime))
DATEPART(datepart, date) Devuelve un número entero que representa el Datepart especificado de la fecha dada.

Argumentos

datepart: valor de tipo String que representa qué parte de la fecha se devuelve como el valor nuevo.

date: expresión que devuelve un valor de tipo DateTime,DateTimeOffset, o Time con precisión = [0-7], o una cadena de caracteres en un formato de fecha.

Valor devuelto

El datepart especificado de la fecha especificada como un valor de tipo Int32.

Ejemplo

SqlServer.DATEPART('year', cast('6/9/2006' as DateTime))
DAY(date) Devuelve el día de la fecha especificada como un número entero.

Argumentos

date: expresión de tipo DateTime o DateTimeOffset con precisión = 0-7.

Valor devuelto

Día de la fecha especificada como un valor de tipo Int32.

Ejemplo

SqlServer.DAY(cast('6/9/2006' as DateTime))
GETDATE() Genera la fecha y hora actuales en el formato interno de SQL Server para los valores datetime.

Valor devuelto

La fecha y hora actuales del sistema como DateTime con una precisión de 3.

Ejemplo

SqlServer.GETDATE()
GETUTCDATE() Devuelve el valor datetime en formato de hora universal coordinada (UTC) o del meridiano de Greenwich.

Valor devuelto

El valor DateTime con una precisión de 3 en formato UTC.

Ejemplo

SqlServer.GETUTCDATE()
MONTH(date) Devuelve el mes de la fecha especificada como un número entero.

Argumentos

date: expresión de tipo DateTime o DateTimeOffset con precisión = 0-7.

Valor devuelto

Mes de la fecha especificada como un Int32.

Ejemplo

SqlServer.MONTH(cast('6/9/2006' as DateTime))
YEAR(date) Devuelve el año de la fecha especificada como un número entero.

Argumentos

date: expresión de tipo DateTime o DateTimeOffset con precisión = 0-7.

Valor devuelto

Año de la fecha especificada como un valor de tipo Int32.

Ejemplo

SqlServer.YEAR(cast('6/9/2006' as DateTime))
SYSDATETIME() Devuelve un valor DateTime con una precisión de 7.

Valor devuelto

Valor DateTime con una precisión de 7.

Ejemplo

SqlServer.SYSDATETIME()
SYSUTCDATE() Devuelve el valor datetime en formato de hora universal coordinada (UTC) o del meridiano de Greenwich.

Valor devuelto

Valor DateTime con una precisión = 7 en formato UTC.

Ejemplo

SqlServer.SYSUTCDATE()
SYSDATETIMEOFFSET() Devuelve un valor DateTimeOffset con una precisión de 7.

Valor devuelto

Valor DateTimeOffset con una precisión de 7 en formato UTC.

Ejemplo

SqlServer.SYSDATETIMEOFFSET()

Para más información sobre las funciones de fecha y hora que admite SqlClient, consulte Tipos de datos y funciones de fecha y hora (Transact-SQL).

Consulte también