Page 1 sur 1

affichage resultats d'une requete sql sans doublons

Posté : 21 juin 2013, 12:53
par disparados
bonjour voila ,je viens vers vous pour m'aider a trouver solution a mon probleme .
j'ai une requete sql qui m'affiche les villes d'une zone
<?php
						
						$query=mysql_query("
                        select * from  zone_livraison order by ville desc limit 4 
                        ");
                        
                        while($data=mysql_fetch_array($query)){
                        echo '<a href="index.php?page=profile_r&ville='.$data['ville'].'">>'.$data['ville'].'</a><br/>';
						}
						?>
mon proble c'est que je veu afficher le nom de la ville qu'une seule fois , sachant que plusieurs zone appartienent au méme ville.
j'espere avoir bien expliquer mon souci .
merci d'avance

Re: affichage resultats d'une requete sql sans doublons

Posté : 21 juin 2013, 13:25
par yann18
bonjour,

c'est plutôt la modélisation de ta bd qu'il faut revoir car une zone est constituée de plusieurs villes entraîne systématiquement une nouvelle entité(ville) et en revanche une ville peut appartenir(villes à cheval entre plusieurs zones) à plusieurs zones fait ressortir, outre l'entité zone, mais aussi une table associative.
Voilà un exemple de modèle qui peut t'éviter de dupliquer les données:

Code : Tout sélectionner

ville(id,nom); zone(id,nom) ville_zone(ville_id,zone_id)
à partir de là tu pourras faire tes requêtes avec jointures le plus simplement possible

Re: affichage resultats d'une requete sql sans doublons

Posté : 21 juin 2013, 13:50
par Mazarini
En supposant que tu ne veuilles afficher que le nom de la ville : select distinct ville from ...

Si tu veux afficher d'autres informations, le problème est quelles risquent d'être différentes pour la même ville suivant la ligne, donc résultat aléatoire.