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 :

Problème de Jointure


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Janvier 2008
    Messages : 88
    Points : 44
    Points
    44
    Par défaut Problème de Jointure
    Bonjour,

    Voulant créer une requête ajout j'ai
    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
    Sqltext = "INSERT INTO F_EcritureC ( JO_Num, EC_No, 
    EC_NoLink, JM_Date, EC_Jour, EC_Date, EC_Piece, CG_Num, 
    CG_NumCont, 
    CT_Num, EC_Intitule, EC_Echeance, N_Devise, EC_Sens,
     EC_Montant, EC_Lettre, EC_Lettrage, CT_NumCont, 
    EC_Devise, cbMarq )"
     
    Sqltext2 = "SELECT F_EcritureC.JO_Num, F_EcritureC.EC_No, F_EcritureC.EC_NoLink, F_EcritureC.JM_Date, 
    F_EcritureC.EC_Jour, F_EcritureC.EC_Date, 
    F_EcritureC.EC_Piece, F_EcritureC.CG_Num,
     F_EcritureC.CG_NumCont, F_EcritureC.CT_Num,
     F_EcritureC.EC_Intitule, F_EcritureC.EC_Echeance, 
    F_EcritureC.N_Devise, F_EcritureC.EC_Sens, 
    F_EcritureC.EC_Montant, F_EcritureC.EC_Lettre,
     F_EcritureC.EC_Lettrage, F_EcritureC.CT_NumCont, 
    F_EcritureC.EC_Devise, F_EcritureC.cbMarq"
     
    Sqltext3 = " FROM " & Ste & ", F_EcritureC LEFT JOIN F_CompteT ON F_EcritureC.CT_Num = F_CompteT.CT_Num"
            Sqltext4 = " WHERE (((F_EcritureC.JM_Date)>#12/31/2007#) 
    AND ((F_EcritureC.CG_Num)='411000' Or (F_EcritureC.CG_Num)='413000') 
    AND ((F_EcritureC.EC_Lettre)=0) 
    AND ((F_CompteT.Factor)='EUROFACTOR FRANCE'));"

    Access me trouve une erreur au niveau de la jointure

    J'ai essayé INNER JOIN >>> erreur de syntaxe
    LEFT Join n'est pas supporté qui me dit

    Je ne sais pas comment faire

    Quelqu'un pourrait m'aider ?

  2. #2
    Membre actif

    Inscrit en
    Août 2005
    Messages
    401
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 401
    Points : 228
    Points
    228
    Par défaut
    Coucou,
    je suis prêt à t'aider mais pour cela il faudrait que tu fasse ta requete en l'enlevant du langage de programmation utilisé.
    C'est plus facile pour nous pour voir l'erreur et pour toi aussi.

    Enfin c'est comme cela que je fais.
    C'est quoi "& Ste & " dans SQLtext 3 ?

    C'est quoi l'erreur exact dans SQL ?

    Thibaud

  3. #3
    Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Janvier 2008
    Messages : 88
    Points : 44
    Points
    44
    Par défaut
    Merci d'abord de bien vouloir m'aider

    Alors le message c'est : "Expression de Jointure non supportée " (erreur 3296 sous Access 2003)

    Si j'enlève les variables alors cela donne :

    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
    INSERT INTO F_EcritureC ( JO_Num, EC_No, EC_NoLink, JM_Date, EC_Jour, EC_Date, EC_Piece, 
    CG_Num, CG_NumCont, CT_Num, EC_Intitule, 
    EC_Echeance, N_Devise, EC_Sens, EC_Montant,
     EC_Lettre, EC_Lettrage, CT_NumCont, 
    EC_Devise, cbMarq )
     
    SELECT F_EcritureC.JO_Num, F_EcritureC.EC_No,
     F_EcritureC.EC_NoLink, F_EcritureC.JM_Date,
     F_EcritureC.EC_Jour, F_EcritureC.EC_Date, 
    F_EcritureC.EC_Piece, F_EcritureC.CG_Num, 
    F_EcritureC.CG_NumCont, F_EcritureC.CT_Num, 
    F_EcritureC.EC_Intitule, F_EcritureC.EC_Echeance, 
    F_EcritureC.N_Devise, F_EcritureC.EC_Sens, 
    F_EcritureC.EC_Montant, F_EcritureC.EC_Lettre,
     F_EcritureC.EC_Lettrage, F_EcritureC.CT_NumCont, 
    F_EcritureC.EC_Devise, F_EcritureC.cbMarq"
     
    FROM NOMDEL'entreprise , F_EcritureC
     LEFT JOIN F_CompteT ON F_EcritureC.CT_Num = F_CompteT.CT_Num"
     WHERE (((F_EcritureC.JM_Date)>#12/31/2007#) 
    AND ((F_EcritureC.CG_Num)='411000' 
    Or (F_EcritureC.CG_Num)='413000') 
    AND ((F_EcritureC.EC_Lettre)=0) 
    AND ((F_CompteT.Factor)='EUROFACTOR FRANCE'));

    Donc voila

  4. #4
    Membre régulier
    Inscrit en
    Septembre 2007
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 63
    Points : 71
    Points
    71
    Par défaut
    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
    SELECT F_EcritureC.JO_Num, F_EcritureC.EC_No,
     F_EcritureC.EC_NoLink, F_EcritureC.JM_Date,
     F_EcritureC.EC_Jour, F_EcritureC.EC_Date, 
    F_EcritureC.EC_Piece, F_EcritureC.CG_Num, 
    F_EcritureC.CG_NumCont, F_EcritureC.CT_Num, 
    F_EcritureC.EC_Intitule, F_EcritureC.EC_Echeance, 
    F_EcritureC.N_Devise, F_EcritureC.EC_Sens, 
    F_EcritureC.EC_Montant, F_EcritureC.EC_Lettre,
     F_EcritureC.EC_Lettrage, F_EcritureC.CT_NumCont, 
    F_EcritureC.EC_Devise, F_EcritureC.cbMarq
    FROM NOMDELentreprise , F_EcritureC
    , F_CompteT
     WHERE F_EcritureC.CT_Num = F_CompteT.CT_Num
    AND (((F_EcritureC.JM_Date)>#12/31/2007#) 
    AND ((F_EcritureC.CG_Num)='411000' 
    OR (F_EcritureC.CG_Num)='413000') 
    AND ((F_EcritureC.EC_Lettre)=0) 
    AND ((F_CompteT.Factor)='EUROFACTOR FRANCE'))
    Question :
    je ne vois pas a quoi sert NOMDEL'entreprise
    il n'y a aucune jointure dessus...

  5. #5
    Membre expérimenté Avatar de scheu
    Inscrit en
    Juin 2007
    Messages
    1 506
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1 506
    Points : 1 734
    Points
    1 734
    Par défaut
    Citation Envoyé par zilfana63 Voir le message
    LEFT Join n'est pas supporté qui me dit
    tu as essayé LEFT OUTER JOIN au lieu de LEFT JOIN ?

  6. #6
    Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Janvier 2008
    Messages : 88
    Points : 44
    Points
    44
    Par défaut
    Merci Lux08 mais

    Citation Envoyé par Lux08 Voir le message
    Question :
    je ne vois pas a quoi sert NOMDEL'entreprise
    il n'y a aucune jointure dessus...
    Si tu regarde plus haut cest une variable, qui désigne une table temporaire

    Je ne peux pas l'enlever...

  7. #7
    Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Janvier 2008
    Messages : 88
    Points : 44
    Points
    44
    Par défaut
    Merci scheu

    Citation Envoyé par scheu Voir le message
    tu as essayé LEFT OUTER JOIN au lieu de LEFT JOIN ?

    cest quoi la différence entre LEFT OUTER JOIN, LEFT JOIN, RIGHT JOIN, et INNER JOIN stp ?

  8. #8
    Membre expérimenté Avatar de scheu
    Inscrit en
    Juin 2007
    Messages
    1 506
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1 506
    Points : 1 734
    Points
    1 734
    Par défaut
    Regarde sur ce tutoriel : http://sql.developpez.com/sqlaz/jointures/

  9. #9
    Membre du Club
    Inscrit en
    Janvier 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Janvier 2008
    Messages : 88
    Points : 44
    Points
    44
    Par défaut
    Merciii

    J'ai regardé le tutoriel mais je prend la tête avec cette requête

    sur un SQL pur j'aurais fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    INSERT INTO F_EcritureC (JO_Num, EC_No, EC_NoLink, JM_Date, EC_Jour, EC_Date, EC_Piece, CG_Num, CG_NumCont, CT_Num, EC_Intitule, EC_Echeance, N_Devise, EC_Sens,EC_Montant, EC_Lettre, EC_Lettrage, CT_NumCont, EC_Devise, cbMarq)
              SELECT JO_Num, EC_No, EC_NoLink, JM_Date, EC_Jour, EC_Date, EC_Piece, CG_Num, CG_NumCont, CT_Num, EC_Intitule, EC_Echeance, N_Devise, EC_Sens, EC_Montant, EC_Lettre, EC_Lettrage, CT_NumCont, EC_Devise, cbMarq
             FROM MATABLE, F_EcritureC, F_CompteT 
             WHERE F.EcritureC.CT_Num=F_CompteT.CT_Num AND F_EcritureC.Jo_Num = MATABLE.JO_Num
             AND(F_EcritureC.JM_Date>#12/31/2007#) AND (F_EcritureC.CG_Num='411000' Or F_EcritureC.CG_Num='413000') 
             AND (F_EcritureC.EC_Lettre=0) 
             AND (Factor='EUROFACTOR FRANCE');
    Si quelqu'un pourrait me traduire cette requête, ça serait parfait !
    Je veux simplement obtenir les enregistrements (en concordance) selon l'entreprise, le FACTOR qui serait égal à euroFACTOR, et toutes les autres conditions


    Merci

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

Discussions similaires

  1. Problème de jointure de tables
    Par AurelBUD dans le forum Langage SQL
    Réponses: 6
    Dernier message: 20/04/2005, 16h27
  2. Probléme de jointure
    Par Ajrarn dans le forum Langage SQL
    Réponses: 14
    Dernier message: 24/02/2005, 14h57
  3. Vraisemblable problème de jointure
    Par pimousse76 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/02/2005, 15h34
  4. [MS Access] Problème de jointure
    Par Erakis dans le forum Langage SQL
    Réponses: 3
    Dernier message: 07/02/2005, 21h15
  5. Problème de jointure ?!
    Par ebaynaud dans le forum Langage SQL
    Réponses: 8
    Dernier message: 03/11/2004, 11h27

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