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

Requêtes MySQL Discussion :

Sélection de tous les élements avec un requête en jointures


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 186
    Points : 71
    Points
    71
    Par défaut Sélection de tous les élements avec un requête en jointures
    Bonjour,

    J'ai un problème de requête qui me pose problème
    J'ai deux tables :

    TABLE_1 :
    - ID_1
    - DESCR

    TABLE_2
    - ID_2
    - DETRUIT
    - ID_1

    Je voudrais faire un requête qui sélectionne tous les éléments de la TABLE_1
    et qui compte le nombre fois ou l'ID_1 est dans une entrée de la TABLE_2 uniquement pour les entrées non détruites

    Donc ma requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT ID_1, COUNT(ID_2) as NOMBRE_FOIS FROM TABLE_1 JOIN TABLE_2 USING(ID_1) WHERE DETRUIT = "NON"
    Le problème est que si l'ID_1 d'une entrée de la TABLE_1 n'est présent dans aucune entrée de la TABLE_2, alors il ne sera pas affiché, mais pourtant je le voudrais.

    Une idée de ce que je peux faire pour améliorer cette requête ?
    Merci d'avance pour vos réponses.

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    bonjour,


    alors les jointures c'est par ici : http://sqlpro.developpez.com/cours/s...ntures/#LIII-C
    et pour le count.. utilisez un group by ! http://sqlpro.developpez.com/cours/sqlaz/ensembles/#L1

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 186
    Points : 71
    Points
    71
    Par défaut
    Autant pour moi j'ai oublié le GROUP BY dans ma requête.

    Et mon problème est résolu en ajoutant la condition de DETRUIT dans les conditions de JOIN
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT ID_1, COUNT(ID_2) AS NOMBRE_FOIS 
    FROM TABLE_1 
    JOIN TABLE_2 ON(TABLE_1.ID_1 = TABLE_2.ID_1 AND DETRUIT = "NON") 
    GROUP BY TABLE_2.ID_2
    Merci

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

Discussions similaires

  1. Requête tous les bars avec une seule table
    Par fabigol13 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 12/02/2015, 12h27
  2. Tous les ID dans une requête avec SUM
    Par ToxiK dans le forum Requêtes
    Réponses: 3
    Dernier message: 30/09/2011, 19h56
  3. Sélection de tous les champs d'une sous-Requête que je redéfini
    Par electrosat03 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 28/06/2007, 17h43
  4. Réponses: 3
    Dernier message: 14/03/2007, 18h31
  5. Récupérer tous les champs avec un DISTINCT
    Par Le Mérovingien dans le forum Requêtes
    Réponses: 3
    Dernier message: 05/11/2005, 00h58

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