SQL: Obtener la fecha actual sin la hora

24 11 2010

Como simple curiosidad os transcribo la sentencia que he usado para obtener mediante T-SQL la fecha actual sin la hora, es decir, obtener siempre la fecha con la hora a 00:00:00. A primera vista puede parecer trivial, pero T-SQL no dispone de ninguna función específica que devuelva ese valor. GETDATE() devuelve siempre la fecha con la hora actual. Puestos a crear una función he buscado por internet la más optima y he encontrado la siguiente:

CAST(
FLOOR( CAST( GETDATE() AS FLOAT ) )
AS DATETIME
)

De todas las soluciones que he encontrado esta es la más simple y la que menos tiempo tarda en calcular la fecha.