GETDATE Vs SYSDATETIME


Buen día SQLeros, para obtener la fecha del sistema podemos utilizar las funciones GETDATE() o SYSDATETIME() de  .
La pregunta es cual es la diferencia entre ellas…
Para obtener la respuesta ejecutamos la siguiente consulta:
SELECT GETDATE() 'GETDATE',   SYSDATETIME() 'SYSDATETIME'
El resultado:
GETDATE                                 SYSDATETIME
2012-05-14 18:05:04.720        2012-05-14 18:05:04.7232705
Entonces… ¿cuál es la diferencia?
Cuando utilizamos GETDATE la precisión se limita a milisegundos mientras que la precisión de SYSDATETIME llega hasta nanosegundos.

SYSDATETIME() es importante cuando se utiliza el tipo de datos DATETIME2 y por lo tanto la diferencia entre las funciones mencionadas es impostante al necesitar una mayor precisión.
Conclusión
Realmente no hay razón para continuar usando GETDATE. A partir de SQL 2008 es recomendado el uso de SYSDATETIME para recuperar la fecha y/u hora. [Por razones de depreciación ;)]
¡Saludos!

No hay comentarios:

Publicar un comentario