¿Hay alguna forma en una declaración MySQL de ordenar registros (a través de un sello de fecha) por> = AHORA () -1 para que se seleccionen todos los registros desde el día anterior hasta el futuro?
                138
            
  
              
        A juzgar por la documentación de las funciones de fecha / hora , debería poder hacer algo como:
SELECT * FROM FOO
WHERE MY_DATE_FIELD >= NOW() - INTERVAL 1 DAY
Tenga en cuenta que el resultado puede ser ligeramente diferente de lo esperado.
NOW()devuelve aDATETIME.Y
INTERVALfunciona como se nombra, por ejemploINTERVAL 1 DAY = 24 hours.Por lo tanto, si su secuencia de comandos está programada para ejecutarse
03:00, perderá elfirst three hours of records from the 'oldest' day.Para aprovechar todo el día
CURDATE() - INTERVAL 1 DAY. Esto volverá al comienzo del día anterior, independientemente de cuándo se ejecute el script.fuente
Ya casi estás allí: es
NOW() - INTERVAL 1 DAYfuente
Seguro que puede:
fuente
DATE_ADDentonces-1 day.No vi ninguna respuesta correctamente usando
DATE_ADDoDATE_SUB:Restar 1 día de
NOW()Agregar 1 día desde
NOW()fuente
cuando el campo de búsqueda tiene una marca de tiempo y desea buscar registros de 0 horas ayer y 0 horas hoy, use construcción
en lugar
fuente