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

PHP & Base de données Discussion :

Bonjour, je n'arrive pas à trouver la bonne requète mysql [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 204
    Points : 123
    Points
    123
    Par défaut Bonjour, je n'arrive pas à trouver la bonne requète mysql
    Bonjour,

    je n'arrive pas à trouver la bonne requète mysql me permettant d'obtenir le nombre d'agences d'un département ayant publié des biens.

    D'abord, je vous montre les 2 tables à partir desquelles je dois construire la bonne requète mysql.

    1) La table agence :
    Quand une agence s'inscrit sur le site, elle est insérée dans la table agence.
    Voici la structure de la table agence :

    id_agence | nom | departement
    1 | aaa | 75
    2 | bbb | 75
    3 | ccc | 75
    4 | ddd | 92
    5 | eee | 94

    Par exemple, d'après la table, l'agence bbb se situe dans le département 75 et est le 2ème inscrit du site.


    2) la table bien :
    Lorsque une agence est inscrite sur le site, elle a la possibilité de publier des biens sur le site.

    Et lorsqu'une agence publie un bien, ce bien est inséré dans la table bien.

    Voici la structure de la table bien :

    id_bien | id_agence
    880 | 1
    881 | 1
    882 | 1
    883 | 2

    Ici, d'après cette table, l'agence 1 (donc c'est l'agence aaa du 75) a publié 3 biens (880,881, et 882),
    et l'agence 2 (donc c'est l'agence bbb du 75) a publié 1 bien (883).

    Donc le nombre d'agence du 75 ayant publié des biens est de 2 (id_agence 1 et id_agence 2)
    => justement, je cherche la requete mysql qui me permet d'obtenir le nombre d'agence situé dans le 75 qui ont publié des biens.

    Est-ce que vous pouvez-m'aider s'il vous plait ?

    Merci d'avance, cordialement.

  2. #2
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2009
    Messages : 236
    Points : 348
    Points
    348
    Par défaut
    Test cela

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT COUNT(*)
    FROM agence
    WHERE departement = 75
    AND id_agence IN (SELECT id_agence FROM bien GROUP BY id_agence);
    Pensez à la balise [CODE].
    Aucune réponse aux questions par MP.

  3. #3
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 204
    Points : 123
    Points
    123
    Par défaut
    Bonjour gwharl,

    merci pour ta réponse,

    je vais tester.

    Normal que je n'arrivais pas car je ne connaissait pas le IN.


    Au début, je faisait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select count(*) from agence, bien where agence.id_agence=bien.id_agence and agence.departement='75' group by agence.id_agence
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select count(distinct id_agence) from agence, bien where agence.id_agence=bien.id_agence and agence.departement='75'
    mais les 2 requètes ne marchaient pas.

    Je vais tenter la chance que tu m'as donné.

  4. #4
    Membre régulier
    Inscrit en
    Février 2009
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 204
    Points : 123
    Points
    123
    Par défaut
    Merci beaucoup !

    ça marche, heureusement que t'étais là.

    Que la vie te récompense.


    Résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Je n'arrive pas à trouver la bonne requête
    Par totoAussi dans le forum Requêtes
    Réponses: 13
    Dernier message: 07/09/2011, 12h33
  2. Réponses: 4
    Dernier message: 24/08/2011, 13h17
  3. Réponses: 5
    Dernier message: 14/05/2006, 22h41
  4. Une parse error que j'arrive pas à trouver
    Par Kerweb dans le forum Langage
    Réponses: 3
    Dernier message: 27/03/2006, 12h25

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