IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Problème avec SQL


Sujet :

Langage SQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2009
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 75
    Points : 34
    Points
    34
    Par défaut Problème avec SQL
    Bonsoir,

    Bon je prépare ma base de donnée d'un site avant de travailler sur code avec PHP,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.

  2. #2
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Points : 8 873
    Points
    8 873
    Par défaut
    Bonjour,

    tout simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT ville, count(musee) AS 'Nombre_musees'
    FROM ...
    ORDER BY ville, Nombre_musees
    ++

  3. #3
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 109
    Points : 28 434
    Points
    28 434
    Par défaut
    Si le nombre de musées est le critère de tri, la requête serait (en commençant par la ville qui a le plus de musées

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT  ville
        ,   nombre_musees
    FROM    matable
    ORDER BY nombre_musees  DESC
    Si ta table a une autre structure, il faudra adapter la requête. (Règles du forum Langage SQL à lire par tous)

  4. #4
    Nouveau membre du Club
    Inscrit en
    Octobre 2009
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 75
    Points : 34
    Points
    34
    Par défaut
    Merci pour vos 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".

    Merci.

  5. #5
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 109
    Points : 28 434
    Points
    28 434
    Par défaut
    En SQL on parle de tables et pas de tableaux

    Et je ne vois pas dans la description que tu nous données de liaison entre les villes et les musées

  6. #6
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 801
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 801
    Points : 34 063
    Points
    34 063
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par elec1984 Voir le message
    - 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|
    Elles sont où les coordonnées ?

    Les colonnes open_day et close_day me semblent redondantes.

    Règle de gestion :
    Un musée est situé dans une ville et une ville peut contenir plusieurs musées.

    MCD :
    Musée -1,1----Situer----0,n- Ville

    Tables :
    ville (v_Id, v_nom, v_population...)
    musee (m_id, m_nom, m_adresse, m_id_ville...)

    Règle de gestion :
    Un musée ouvre plusieurs jours et un jour peut être jour d'ouverture pour plusieurs musées.

    MCD :
    Musée -1,n----Ouvrir----0,n- Jour

    Tables :
    jour (j_id, j_nom) [1 - Lundi, 2 - Mardi...]
    musee (m_id, m_nom, m_adresse, m_id_ville...)
    ouverture_musee (om_id_musee, om_id_jour)

    Règle de gestion :
    Un musée peut être fermé à certaines dates et une date peut voir fermé plusieurs musées.

    MCD :
    Musée -0,n----Fermer----0,n- Date_calendrier

    Tables :
    calendrier (c_date...)
    musee (m_id, m_nom, m_adresse, m_id_ville...)
    fermeture_musee (fm_id_musee, fm_date)


    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.
    Il faudrait envisager les possibilités de l'héritage si les différents types d'équipements ont des attributs communs et des attributs spécifiques.

    MCD :
    Musée -(1,1)----Etre----0,1- Equipement
    Hôtel -(1,1)----Etre----0,1--------------|
    Supermarché -(1,1)----Etre----0,1---|

    Tables :
    equipement (e_id, e_nom, e_adresse, e_id_ville...)
    musee (m_id_equipement, ...)
    hotel (h_id_equipement, h_nb_etoiles...)
    supermarche (sm_id_equipement, sm_surface...)

    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 ...
    Le moins qu'on puisse dire, c'est que les noms de tes colonnes ne sont pas très explicites ! Je ne vois que des types ici, pas des musé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".
    Classement des villes par le nombre de leurs musées :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT v.v_nom, COUNT(*) AS nb_musees
    FROM ville AS v
    INNER JOIN equipement AS e ON v.v_id = e.e_id_ville
      INNER JOIN musee AS m ON e.e_id = m.m_id_equipement
    GROUP BY v.v_nom
    ORDER BY COUNT(*) DESC

Discussions similaires

  1. Réponses: 1
    Dernier message: 02/05/2007, 16h43
  2. problème avec sql designer
    Par artotal dans le forum Langage SQL
    Réponses: 1
    Dernier message: 09/08/2006, 16h57
  3. Problèm avec SQL*LOADER
    Par logicave dans le forum Oracle
    Réponses: 2
    Dernier message: 14/07/2006, 17h55
  4. Quelques problèmes avec SQL SERVEUR (LIKE et caractères)
    Par poussinphp dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 21/09/2005, 09h43
  5. (jsp) problème avec sql qui contient la date
    Par future dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 31/08/2005, 16h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo