Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonsoir,
Bon c'est une question un peu hors Zend Framework,je prépare ma base de donnée d'un site avant de travailler sur code avec Zend,j'utilise "Mysql query browser" pour les requêtes,mon problème est que je cherche à classer avec "SQl" la liste des villes selon le nombres de musées,par exemple:
Ville | Nombre de musée
Paris 10
Marseille 8
...... ..
....... ..
........ ..
Je sais que c'est un peu bête comme question mais je n'arrive pas à faire une classement avec "count" ou "order by"...
Merci.Nll
Dernière modification par elec (05-01-2010 18:23:46)
Hors ligne
si tu nous mettait la structure de ta table ?
Select * from Table_ville order by musee
A+JYT
Dernière modification par sekaijin (05-01-2010 21:50:50)
Hors ligne
Merci pour ta réponse,mais encore le problème est que ma base de donnée est assez complexe,j'utilise pour mon cas trois tableaux:
- Le premier contient les musées avec les noms et les coordonnées pour chacun d'eux :
ID | id_typ | museum | open.day|close_day|
-Puis le deuxième tableau contient les villes par ordre avec une clé pour chaque ville:
ID | ville | population |
- Enfin un tableau qui reliera les deux,on peux dire un tableau standard qui est utilisé partout dans la base de donnée,par exemple j'ai plusieurs d'autres tableaux telle que "hôtels" ou "super marché" et chaque tableau est traité par la même façon ou je dois passer par mon tableau standard.
ID | typ_id|typ_id_ref |
ici "typ_id" pour connaitre si c'est "musée"ou"hôtels" et "typ_ref_id" pour référencer quel musée pour tirer ces coordonnées ...
J'ai essayé un peu d'expliquer ma base de donnée,enfin je trouve une difficulté pour le tri ou classement avec "SQL".
A+.Nll
Dernière modification par elec (06-01-2010 10:38:47)
Hors ligne
Il faudrait un peu trop de temps et le schéma complet pour faire une requête, mais en gros l'idée est d'utiliser GROUP BY (sur la ville) et HAVING
Je te laisse regarder dans une doc SQL comment marchent ces 2 mots clés.
En très gros ça donnerait quelque chose du genre
SELECT ville, count(table_de_relation.*) AS cnt FROM table_ville,table_de_relation GROUP BY ville HAVING relation entre ta ville et ta table de relation WHERE tu choisis les types qui vont bien ORDER BY cnt -- le cnt défini à la première ligne
A+, Philippe
Dernière modification par philippe (06-01-2010 10:53:42)
Hors ligne
Bonjour,
Oui c'est ce que je cherche,en plus "GROUP BY" + "HAVING" me facilite la tache,Merci.
A+.Nll
Dernière modification par elec (06-01-2010 11:52:45)
Hors ligne