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 :

Probleme facile sur requete


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club Avatar de bractar
    Inscrit en
    Janvier 2004
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 224
    Points : 63
    Points
    63
    Par défaut Probleme facile sur requete
    Bonjour, j'ai cette requete

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SELECT * 
    FROM folders f, data_bank_info_debit_credit_auth d1, data_business_info d2, data_business_profile d3, data_equipment d4, data_merchant_site_inspection d5, data_owners_or_officers_info d6, data_payment_and_miscellaneous d7, data_rates_fees d8, data_sales_profile d9, data_trade_ref d10
    WHERE d1.id_client = d2.id_client
    AND d2.id_client = d3.id_client
    AND d3.id_client = d4.id_client
    AND d4.id_client = d5.id_client
    AND d5.id_client = d6.id_client
    AND d6.id_client = d7.id_client
    AND d7.id_client = d8.id_client
    AND d8.id_client = d9.id_client
    AND d9.id_client = d10.id_client
    AND d10.id_client = f.id_client
    AND f.id_client =22
    le problème est que certaines de ces tables n'ont pas l'enregistrement demandé (id_client n'existe pas). Comment faire, je ne peux pas le deviner à l'avance.
    Merci d'avance

  2. #2
    Membre expérimenté
    Avatar de Adjanakis
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    739
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2004
    Messages : 739
    Points : 1 351
    Points
    1 351
    Par défaut
    Bonjour,

    Il semblerait que le LEFT JOIN soit la solution

  3. #3
    Membre du Club Avatar de bractar
    Inscrit en
    Janvier 2004
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 224
    Points : 63
    Points
    63
    Par défaut
    ok merci mais pourrais-tu me montrer l'exemple pour l'une des lignes de ma requête?
    Merci

  4. #4
    Membre expérimenté
    Avatar de Adjanakis
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    739
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2004
    Messages : 739
    Points : 1 351
    Points
    1 351
    Par défaut
    Ca pourrait ressembler à ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SELECT * 
    FROM data_bank_info_debit_credit_auth d1
        LEFT JOIN data_business_info d2 ON (d1.id_client = d2.id_client)
        LEFT JOIN data_business_profile d3 ON (d2.id_client = d3.id_client)
        LEFT JOIN data_equipment d4 ON (d3.id_client = d4.id_client)
        LEFT JOIN data_merchant_site_inspection d5 ON (d4.id_client = d5.id_client)
        LEFT JOIN data_owners_or_officers_info d6 ON (d5.id_client = d6.id_client)
        LEFT JOIN data_payment_and_miscellaneous d7 ON (d6.id_client = d7.id_client)
        LEFT JOIN data_rates_fees d8 ON (d7.id_client = d8.id_client)
        LEFT JOIN data_sales_profile d9 ON (d8.id_client = d9.id_client)
        LEFT JOIN data_trade_ref d10 ON (d9.id_client = d10.id_client)
        LEFT JOIN folders f  ON (d10.id_client = f.id_client)
    WHERE f.id_client =22

  5. #5
    Membre du Club Avatar de bractar
    Inscrit en
    Janvier 2004
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 224
    Points : 63
    Points
    63
    Par défaut
    J'ai repris ta requête mains sans succés

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SELECT * 
    FROM data_business_info d1
        LEFT JOIN data_bank_info_debit_credit_auth d2 ON (d1.id_client = d2.id_client)
        LEFT JOIN data_business_profile d3 ON (d2.id_client = d3.id_client)
        LEFT JOIN data_equipment d4 ON (d3.id_client = d4.id_client)
        LEFT JOIN data_merchant_site_inspection d5 ON (d4.id_client = d5.id_client)
        LEFT JOIN data_owners_or_officers_info d6 ON (d5.id_client = d6.id_client)
        LEFT JOIN data_payment_and_miscellaneous d7 ON (d6.id_client = d7.id_client)
        LEFT JOIN data_rates_fees d8 ON (d7.id_client = d8.id_client)
        LEFT JOIN data_sales_profile d9 ON (d8.id_client = d9.id_client)
        LEFT JOIN data_trade_ref d10 ON (d9.id_client = d10.id_client)
        LEFT JOIN folders f  ON (d10.id_client = f.id_client)
    WHERE f.id_client =22
    En fait, pour tester, l'id_client n'est dispo que dans la table data_business_info, celle que j'ai donc déclarée en d1 et mise au début de ma requête

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

Discussions similaires

  1. [WD17] problem hlitrecherche sur requete
    Par gz.yassine dans le forum WinDev
    Réponses: 6
    Dernier message: 02/06/2015, 15h03
  2. Probleme SUM sur requete qui me rend fou !
    Par EDAT2 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 12/06/2012, 19h10
  3. Probleme variable sur requete
    Par calou_33 dans le forum SQL
    Réponses: 2
    Dernier message: 04/11/2010, 15h52
  4. [CR 2008] [JAVA] Probleme paramètre sur requete
    Par ZULL dans le forum SDK
    Réponses: 1
    Dernier message: 22/10/2009, 11h21
  5. [MySQL]probleme introuvable sur requete sql
    Par SegmentationFault dans le forum Requêtes
    Réponses: 2
    Dernier message: 27/11/2006, 00h12

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