38 votes

Sélection de la plage de dates par horodatage MySQL

Je ne sais pas vraiment par où commencer avec celui-ci. Quelqu'un peut-il m'aider/me diriger dans la bonne direction ?

J'ai une colonne d'horodatage dans MySQL et je veux sélectionner une plage de dates par exemple, tous les horodatages qui sont en octobre 2010.

- Merci. Merci.

55voto

Wouter van Nifterick Points 14218

Habituellement, ce serait :

SELECT * 
  FROM yourtable
 WHERE yourtimetimefield>='2010-10-01'
   AND yourtimetimefield< '2010-11-01'

Mais parce que vous avez un horodatage Unix, vous aurez besoin de quelque chose comme ça :

SELECT * 
  FROM yourtable
 WHERE yourtimetimefield>=unix_timestamp('2010-10-01')
   AND yourtimetimefield< unix_timestamp('2010-11-01')

6voto

abhijitcaps Points 106

Je vois des gens faire beaucoup de commentaires sur cette question. Mais je pense que l'utilisation simple de LIKE pourrait être plus facile pour obtenir les données du tableau.

SELECT * FROM table WHERE COLUMN LIKE '2013-05-11%'

Utilisez LIKE et publiez des données de recherche de caractères sauvages. Espérons que cela résoudra votre problème.

5voto

Dan Grossman Points 31514
SELECT * FROM table WHERE col >= '2010-10-01' AND col <= '2010-10-31'

4voto

Juanma Font Points 41

Cette requête SQL va extraire les données pour vous. C'est facile et rapide.

SELECT *
  FROM table_name
  WHERE extract( YEAR_MONTH from timestamp)="201010";

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