sql >> Base de Datos >  >> RDS >> Sqlserver

Para obtener la fecha de datetime en sql

La razón por la que su consulta no devuelve la fila que esperaba es porque GETDATE() devuelve la parte de la fecha y la hora en el momento en que se ejecutó la consulta. El valor en su DateCreated la columna no coincidirá con la porción de tiempo, por lo que no se devuelven filas.

Hay varias formas de construir una consulta para que evalúe la fecha basándose solo en el componente de fecha. He aquí un ejemplo:

WHERE YEAR(datecreated) = YEAR(GETDATE())
  AND MONTH(datecreated) = MONTH(GETDATE())
  AND DAY(datecreated) = DAY(GETDATE())

La desafortunada realidad es que cualquier consulta que use una función en la columna significa que si existe un índice en la columna, no se puede usar.