42 votes

mysql : obtenir le nombre d'enregistrements entre deux date-heure

Je suis coincé avec un problème dans MySQL. Je veux obtenir le nombre d'enregistrements entre deux entrées date-heure. Par exemple: J'ai une colonne dans ma table nommée "créée" ayant le type de données datetime

Je veux compter les enregistrements qui ont été créés entre la date et l'heure " AUJOURD'HUI 4:30 AM " et " CURRENT DATE TIME ".

J'ai essayé certaines des fonctions de MySQL mais toujours pas de chance avec ça.

Pouvez-vous s'il vous plaît m'aider avec cela? Merci.

89voto

Harry Joy Points 27760

Peut être avec :

 SELECT count(*) FROM `table` 
where 
    created_at>='2011-03-17 06:42:10' and created_at<='2011-03-17 07:42:50';

ou utilisez between :

 SELECT count(*) FROM `table` 
where 
    created_at between '2011-03-17 06:42:10' and '2011-03-17 07:42:50';

Vous pouvez modifier la date et l'heure selon vos besoins. Peut être utiliser curdate() ou now() pour obtenir les dates souhaitées.

6voto

Wes Points 3337
select * from yourtable where created < now() and created > '2011-04-25 04:00:00'

5voto

Framework Points 32799
select * from yourtable 
   where created < now() 
     and created > concat(curdate(),' 4:30:00 AM') 

1voto

Aditya Tomar Points 75

pour la vitesse tu peux faire ça

 WHERE date(created_at) ='2019-10-21'

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