1. #1
    Membre habitué
    Profil pro
    Inscrit en
    septembre 2003
    Messages
    322
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2003
    Messages : 322
    Points : 137
    Points
    137

    Par défaut Select avec des inner join

    Bonjour,

    Je galère pour faire un GROS select. Bon il n'est pas si gros que ça non plus. Voilà mon schéma:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    --------
    catalog
    --------
    id
    nom
     
    --------
    catalog_has_items
    --------
    catalog_id
    item_id
     
    --------
    items
    --------
    id
    item
     
    --------
    items_has_products
    --------
    item_id
    product_id
     
    --------
    products
    --------
    id
    product
    Je dois sortir en une seule ligne:
    catalog_id | catalog_nom | items | products

    J'ai donc cette requête qui fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT c.id, c.nom, i.item FROM catalog_has_items ci INNER JOIN catalog c ON c.id=ci.catalog_id INNER JOIN items i ON i.id=ci.item_id
    Mais je n'arrive pas à intégrer la table products car un item peut avoir 0 ou plusieurs product. J'ai bien réussi à faire une requête mais du coup il ne me renvoi que les item qui ont des products.
    Or je veux TOUT les enregistrements, qu'il y ai ou pas de products. Derrière je construis un JSON avec les résultats.

    Sinon il faut le faire en 2 requêtes ?

    Merci d'avance pour votre aide.

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Ingénieur d'études décisionnel
    Inscrit en
    mai 2002
    Messages
    7 409
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 7 409
    Points : 22 428
    Points
    22 428

    Par défaut

    Tu dois utiliser une jointure externe pour résoudre ton problème.
    Tu trouveras des explications dans ce tutoriel : les jointures.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    septembre 2003
    Messages
    322
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2003
    Messages : 322
    Points : 137
    Points
    137

    Par défaut

    ohhh je vais aller voir ça de suite Merci.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    septembre 2003
    Messages
    322
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2003
    Messages : 322
    Points : 137
    Points
    137

    Par défaut

    yeepee. après avoir lu la doc et compris comment ça fonctionne, j'ai pu implémenter sans trop de problème.
    Merci

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

Discussions similaires

  1. Regrouper des lignes avec un INNER JOIN
    Par Barsy dans le forum Langage SQL
    Réponses: 11
    Dernier message: 23/11/2009, 14h18
  2. [SQL] Requête dans une requête...avec des INNER JOIN!
    Par PedroBD dans le forum PHP & SGBD
    Réponses: 18
    Dernier message: 06/04/2006, 08h26
  3. [SELECT] Faire un select avec des champs vides
    Par MinsK dans le forum Langage SQL
    Réponses: 1
    Dernier message: 09/08/2005, 00h05
  4. Problème de "select" avec des valeurs a null
    Par SchpatziBreizh dans le forum MS SQL-Server
    Réponses: 2
    Dernier message: 01/07/2005, 16h08
  5. Creer une requete avec des LEFT JOIN et des GRO
    Par donbuz dans le forum Langage SQL
    Réponses: 2
    Dernier message: 01/09/2004, 15h53

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