Cuando un usuario se loguea en la web, se le da de alta en la tabla Online, y entre otros datos se registra con NOW() en formato datetime la fecha y hora en que se loguea, en el campo "hora"
Cada treinta segundos, a través de un timer, se actualiza la fecha mientras el usuario sigue logueado. Si el usuario ya ha abandonado la aplicación, obviamente no se actualizan los datos de tiempo.
En el mismo lapso de tiempo (30 segundos) le paso otra función que debería borrar de la tabla Online todos los usuarios cuyo campo hora lleve al menos un minuto sin actualizar (que hayan abandonado la aplicación, vamos). Entonces hago esta consulta:
Código MySQL:
Ver original
"DELETE FROM Online WHERE hora < (NOW() - INTERVAL 1 MINUTE)";
Pero no me borra los registros antiguos. Probé también con DATE_SUB, pero nada.
¿Qué estoy haciendo mal?