102 votes

Calcul de la différence de temps entre 2 dates en minutes

J’ai un champ de temps Timestamp dans ma base de données MySQL qui est mappé à un `` type de données dans mon bean. Maintenant, je veux une requête par laquelle je peux récupérer tous les enregistrements dans la base de données pour lesquels la différence entre l’horodatage actuel et celui stocké dans la base de données est > 20 minutes.

Comment puis-je le faire?

Ce que je veux, c’est:

Existe-t-il des fonctions MySQL pour cela, ou un moyen de le faire dans SQL?

170voto

Nicola Peluchetti Points 38948

Je pense que vous pourriez utiliser TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2) quelque chose comme

29voto

Deepak Dholiyan Points 1014

J’utilise le code ci-dessous pour aujourd’hui et la date de la base de données.

``

Selon la documentation,le premier argument peut être l’un des suivants:

28voto

Mouloud Points 881
ROUND(time_to_sec((TIMEDIFF(NOW(), "2015-06-10 20:15:00"))) / 60);

6voto

itsmeee Points 1537

Essayez celui-ci:

REMARQUE: cela devrait fonctionner si vous utilisez le format MySQL DateTime. Si vous utilisez Unix Timestamp (entier), ce serait encore plus facile:

UNIX_TIMESTAMP fonction () vous renvoie l’horodatage unix actuel.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X