2013-03-31 8 views
5

Voglio fare una selezione MySQL dove la differenza tra NOW() e un timestamp nella tabella è inferiore a un periodo di tempo specifico, ad esempio 24 ore. Ho provato a fare sottrazione ma non ha funzionato e DateDiff non è quello che voglio. Ci deve essere un modo semplice per farlo, ma non riesco a capirlo. Qualche idea?SELEZIONA WHERE la differenza tra ora e un timestamp è inferiore a 24 ore

Grazie

risposta

1
SELECT 
    timestampdiff(HOUR, yourtimestampcolumn, now()) as hours_since, 
    * 
FROM 
    Your_table 
WHERE 
    timestampdiff(HOUR, yourtimestampcolumn, now()) < 24 

consultare https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_timestampdiff

+0

grazie, in realtà sta per essere TIMESTAMPDIFF (ora, yourtimestampcolumn, ora()) <24, in caso contrario verrà restituito un numero negativo e senza virgolette intorno all'ora – george

+0

@george Corretto, grazie per l'avviso e per l'accettazione. – Sepster

Problemi correlati