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 :

INNER et LEFT JOIN


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2011
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2011
    Messages : 172
    Par défaut INNER et LEFT JOIN
    Bonjour forum

    Je débute en SQL et j'aurais besoin de quelques informations.

    J'ai 6 tables; Estimation, FDR, schedule, floor, Municipality, employe

    estimation est liée a FDR par IDestimation
    FDR est liéee a schedule par IdFDR
    Municipality est liée a schedule par IdMunucipality
    employe est liée a schedule par Idemploye
    floor est liée a schedule par Idfloor

    je voudrais savoir comment monter ma requête SQL, pour aller chercher des infos dans chacune de mes tables.

    PS: les LEFT JOIN s'aplique sur la table floor et Employe, car il n'u a pas toujours des employé ou des floor cédulé. J'ai joint un schéma des table en PJ

    Merci d'avance!
    Fichiers attachés Fichiers attachés

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Par défaut
    Bonjour,

    quand on débute on lit les tutos :

    Le select : http://sqlpro.developpez.com/cours/sqlaz/select/
    Les jointures : http://sqlpro.developpez.com/cours/sqlaz/jointures/

    Ensuite revenez avec vos essais si vous bloquez, mais logiquement vous devriez vous en sortir sans trop de problème.

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2011
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2011
    Messages : 172
    Par défaut
    Merci pour les liens,

    J'ai lu et j'ai monté ma chaîne SQL selon l'exemple donné dans le document, mais elle ne fonctionne pas ; elle ne renvoie aucun résultat, je dois donc avoir une erreur, mais je ne la trouve pas!

    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
    SELECT sch.prodstatusid, sch.prodstatusid2, q.sonbralt, p.Name, s.sitecode, sch.deliveryno, sch.floorid, sch.location, sch.amount, sch.schdate, sch.deliverydate, c.shortname, r.c_address, m.descr, sch.rsschdtlid, schwc.nbhours, r.littletruckbit, r.includedcrane, r.noincludedcrane, r.rolloff, r.zone2, r.normaldelivery, r.steeldelivery, r.escort, r.restrictedaccess, r.elsewhereprov, sch.stocksiteid 
                    FROM rsscheduledtl sch 
                        INNER JOIN rsscheduledtlwc schwc ON sch.rsschdtlid = schwc.rsschdtlid 
                            INNER JOIN workcenter w ON schwc.wcid = w.wcid 
                        INNER JOIN Sites s ON sch.siteid = s.siteid 
                        INNER JOIN Products p ON sch.prodid = p.prodid 
                        LEFT JOIN floorhdr f ON sch.floorid = f.floorid 
                        INNER JOIN roadsheet r on sch.roadsheetid = r.roadsheetid 
                            INNER JOIN QOHdr q ON r.qonbr = q.qonbr 
                                INNER JOIN Municipality m ON q.municipalityid = m.municipalityid 
                                INNER JOIN Customers c ON q.custid = c.custid 
                    WHERE sch.prodstatusid IN  (" & IdStatus & ") 
                    AND sch.deliverydate = '" & dateliv & "' 
                    AND sch.isactive = 1 
                    AND schwc.wcid = 1
    merci de votre aide!

  4. #4
    Expert confirmé
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 448
    Par défaut
    Bonjour,
    Sans jeu d'essai, difficile de dire pourquoi la requête ne renvoie rien.
    Peut-être que tu peux supprimer la clause where, et voir ce que ça donne.

    Tatayo.

  5. #5
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    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 818
    Billets dans le blog
    14
    Par défaut
    Regarde notamment si tes variables sont bien valorisées en affichant la requête réelle avant envoi au serveur.

    Et si la suppression du WHERE ne donne toujours pas de résultat, reprend la requête en ajoutant petit à petit chaque jointure et en testant à chaque fois. Tu trouveras ainsi quelle jointure ne donne plus aucune donnée.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  6. #6
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2011
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2011
    Messages : 172
    Par défaut
    Ok Merci ça fonctionne, mauvais format dans la date

    Merci à vous!!

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

Discussions similaires

  1. Left join qui se conduit comme un inner join
    Par francois134 dans le forum Requêtes
    Réponses: 5
    Dernier message: 19/04/2009, 17h03
  2. INNER JOIN, LEFT JOIN
    Par Mitaka dans le forum Requêtes
    Réponses: 27
    Dernier message: 24/03/2009, 16h52
  3. left join , right join et inner join ?
    Par amine003 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 05/12/2008, 17h25
  4. Jointures INNER JOIN LEFT JOIN
    Par tizla dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 31/05/2007, 12h12
  5. Export d'une vue avec LEFT JOIN
    Par schnourf dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 22/05/2003, 13h57

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