Page 1 sur 1

tri sur le mois dans un champ date

Posté : 10 janv. 2013, 10:08
par binjo2
bonjour à tous,

j'ai un site de petites annonces sur lequel j'ai plus de 7000 annonces.
j'ai installé plusieurs filtres pour améliorer la recherche, dont un tri par année.

mais voilà, je souhaiterai, en page d'accueil de la recherche par date, ne faire apparaitre que les annonces de moins de 3 mois.

j'ai cherché à utiliser MONTH(date_annonce) mais je n'arrive pas à faire d'opérations entre ces dates et le mois en cours.

mon idée est d'avoir un tri du genre SELECT * FROM base WHERE MONTH(date_annonce)-[mois en cours]<4

merci d'avance !!!

Re: tri sur le mois dans un champ date

Posté : 10 janv. 2013, 10:40
par xTG
Pour avoir le mois en cours :
MONTH(NOW())
Mais attention, il faut aussi vérifier l'année, sinon tu risques d'avoir les mois des années précédents. :)

Re: tri sur le mois dans un champ date

Posté : 10 janv. 2013, 11:09
par yann18
bonjour,

tu peux utiliser cette syntaxe mysql:
SELECT * FROM ma_table
           WHERE TO_DAYS(NOW()) - TO_DAYS(date_annonce) <= 90;
cette requête extrait les enregistrements de moins de 3 mois(90 jours).

Re: tri sur le mois dans un champ date

Posté : 10 janv. 2013, 11:18
par binjo2
=D>
Merci les gars, les deux fonctionnent parfaitement.

Re: tri sur le mois dans un champ date

Posté : 10 janv. 2013, 11:37
par yann18
de rien