Tecnología

Inicio

T-SQL Comparación de fechas

La función de T-SQL DATEDIFF le permite comparar dos fechas y devolver la diferencia entre ellos en una variedad de diferentes intervalos, incluyendo años, meses, días, horas, minutos o segundos. Para comprobar la cronología, también puede utilizar la opción "entre" y comprobar para ver si la fecha cae entre otros dos. También puede comparar dos fechas utilizando el mayor que, menor que e igual a los operadores.

Los tipos de datos de fecha

A partir de SQL 2008, las bases de datos de Microsoft admiten tipos de datos que le permiten almacenar la fecha y la hora por separado. Otros valores de fecha incluyen smalldatetime, que almacena una fecha combinada y el valor de tiempo que no incluye segundos, fecha y hora, que almacena el valor con una precisión de hasta .00333 segundos, y datetime2 con una precisión de 100 nanosegundos.

usando DATEDIFF

El DATEDIFF le permite devolver el número de límites de un tipo específico que se producen entre dos fechas. intervalos disponibles, o límites, para comprobar incluyen año, trimestre, mes, día, semana, hora, minuto, segundo y más. El formato de la función DATEDIFF es DATEDIFF ( 'límite', startdate, enddate). El límite es el datepart va a comprobar, una de las opciones anteriores. Muchas abreviaturas se pueden utilizar para estos dateparts. Startdate y enddate pueden ser cualquier expresión válida o variable que se evalúa como una fecha u hora legititmate tipo de datos.

Al comparar el uso de Entre

Para comprobar si una fecha se produce después de una fecha específica y antes de otra fecha, se puede utilizar el ENTRE comunicado. Esto es útil en una consulta para obtener todos los objetos en un determinado período de tiempo. Puede, por ejemplo, lo utilizan en la cláusula WHERE para tirar de todos los eventos que tienen lugar en enero, como se muestra a continuación:

SELECT eventID, eventDate de Eventos
DONDE eventDate entre el '01 / 01/2011 'y '01 / 31/2011'

Otros Fecha comparaciones

Para comparar dos fechas, también se pueden utilizar los mayores que, menor que, o igual operadores en sus estados de cuenta dónde. Para encontrar todos los artículos con una fecha antes del 1 de enero del 2011, se usaría: SELECT * FROM [Tabla] donde Date <'01 / 01/2011 '. La misma lógica se aplica para mayor que las comparaciones y la igualdad. La comparación de las fechas que utilizan este método no cuenta para los valores de tiempo almacenados en un tipo de datos de fecha y hora, así que si quieres todo antes del mediodía en una fecha determinada, asegúrese de incluir que en la parte después del signo de la comparación.