martes, 9 de noviembre de 2010

SQLServer. Extraer la fecha de un campo DateTime

Cuando buscas cómo hacerlo hay un montón de gente que utiliza el CONVERT, que formatea la fecha de múltiples maneras en función de un parámetro:

SELECT CONVERT(VARCHAR(10),<campofecha>,111)

El problema es que el resultado del CONVERT es una cadena, y si se quiere tratar como fecha hay que hacerle un segundo CAST a DateTime.

La manera "elegante" de resolverlo, y yo me huelo que bastante más eficiente, es la siguiente:

SELECT DATEADD(D, 0, DATEDIFF(D, 0, <campofecha>))

Hale!

No hay comentarios: