Bonjour,
Voilà, je suis un peu perdu dans ma requete SQL.
J'ai 2 tables: "annonce" et "suivi_prix" qui se décomposent ainsi:
annonce
id |surface | type_de_bien | localite
--------------------------------------
1 | 80 | 2 | 77
7 | 70 | 2 | 77
2 | 130 | 2 | 77
suivi_prix
id |prix | date
-----------------------
1 | 230 | 12-25-2008
7 | 150 | 10-14-2008
2 | 250 | 09-27-2007
7 | 130 | 02-29-2009
7 | 120 | 03-10-2009
2 | 220 | 03-15-2008
Je voudrais en fait pouvoir garder sur cette dernière table les prix les plus récents pour chaque id en fonction du type_de_bien, de la localite, et dont la surface n'est pas "0".
Au final, il faudrait que j'obtienne ca, apres un filtrage sur localite=77 et type_de_bien=2 et surface <> de 0
surface|prix
-------------
80 | 230 ----> dernier prix enregistré pour l'id 1
70 | 120 ----> dernier prix enregistré pour l'id 7
130 | 220 ----> dernier prix enregistré pour l'id 2
Voilà la requete que j'ai pour le momment, qui fonctionne très bien, mais je bloque pour récuperer uniquement le dernier prix enregistré dans la table "suivi_prix:
Voilà, j'espère avoir été assez clair sur mon problème, merci d'avance pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 ("SELECT annonce.surface, suivi_prix.prix FROM annonce INNER JOIN suivi_prix ON annonce.id = suivi_prix.id WHERE annonce.localite='$localite' AND annonce.type_de_bien='$type_de_bien' AND annonce.surface<>'0'") or die(mysql_error())
Partager