Tal vez me falta algo, pero con los tipos DATETIME, la solución CURDATE () no funciona. Esto hace.
Jahmic
Además, esto lleva mucho tiempo ya que hay una sobrecarga de convertir DATETIME a la fecha a través de la función DATE () y luego comparar con la condición where.
roopunk
No use funciones en columnas, hace que la consulta ignore el índice, lo que provoca consultas lentas. Verifique mi respuesta para un enfoque alternativo stackoverflow.com/a/42365426/4311336
Si la columna tiene índice y se aplica una función en la columna, el índice no funciona y se produce un escaneo completo de la tabla, lo que provoca una consulta realmente lenta.
Para usar el índice y comparar datetime con la fecha actual / actual, se puede usar lo siguiente.
Solución para OP:
select*from users
where created > CONCAT(CURDATE(),' 23:59:59')
Muestra para obtener datos para hoy:
select*from users
where
created >= CONCAT(CURDATE(),' 00:00:00')AND
created <= CONCAT(CURDATE(),' 23:59:59')
O use ENTRE para abreviar
select*from users
where created BETWEEN
CONCAT(CURDATE(),' 00:00:00')AND CONCAT(CURDATE(),' 23:59:59')
puede devolver todas las filas y luego usar la función de fechado de php dentro de una instrucción if, aunque eso supondrá una carga adicional en el servidor.
if(dateDiff(date("Y/m/d"),$row['date'])<=0){}else{
echo " info here";}
CURDATE()
solo regreso fecha no horaLeer más: http://www.tomjepson.co.uk/tutorials/36/mysql-select-where-date-today.html
fuente
si la columna es de tipo fecha y hora.
fuente
Si 'creado' es tipo de fecha y hora
CURDATE () significa también '2013-05-09 00:00:00'
fuente
La respuesta marcada es engañosa. La pregunta planteada es
DateTime
, pero lo que se necesitaba era justoCURDATE()
.La respuesta más corta y correcta a esto es:
fuente
Si la columna tiene índice y se aplica una función en la columna, el índice no funciona y se produce un escaneo completo de la tabla, lo que provoca una consulta realmente lenta.
Para usar el índice y comparar datetime con la fecha actual / actual, se puede usar lo siguiente.
Solución para OP:
Muestra para obtener datos para hoy:
O use ENTRE para abreviar
fuente
fuente
El siguiente código funcionó para mí.
fuente
json_date ["05/11/2011"]
fuente
puede devolver todas las filas y luego usar la función de fechado de php dentro de una instrucción if, aunque eso supondrá una carga adicional en el servidor.
fuente