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 et SQL. Discussion :

Problème de JOIN


Sujet :

Requêtes et SQL.

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Analyste en intelligence d'affaires
    Inscrit en
    Septembre 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste en intelligence d'affaires

    Informations forums :
    Inscription : Septembre 2017
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Problème de JOIN
    Bonjour, j'essaye de faire un JOIN qui relie 3 tables/requêtes et je n'arrive pas à faire fonctionner ma dernière étape pour avoir la date
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    SELECT DISTINCT 
       INVAct.Base, 
       INVAct.Region, 
       INVAct.SubRegion, 
       INVAct.SubSubRegion, 
       INVAct.MY, 
       INVAct.SKU, 
       FCal.CalEndDate AS NextMonth,
       INVAct.QTY AS BEGINNING_INVENTORY,
       FCST.QTY AS ENDING_INVENTORY
    FROM ((dbo_BP_PELYCO_ENDING_INVENTORY_ACTUAL AS INVAct 
    LEFT JOIN dbo_FiscalCalendar_View AS FCal ON INVAct.Month=FCal.CalStartDate) 
    LEFT OUTER JOIN FCST_Detail AS FCST ON FCST.Condition = (INVAct.Region & INVAct.SubRegion & INVAct.SubSubRegion & InvAct.SKU) AND FCST.Month =FCal.CalEndDate)

    J'obtiens le message d'erreur "Expression Join non supportée"

    Je sais que c'est ma portion FCST.Month =FCal.CalEndDate qui ne fonctionne pas, car il me manque un join quelque part.

    Merci!

  2. #2
    Membre averti
    Homme Profil pro
    Sapeur pompier
    Inscrit en
    Février 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Sapeur pompier
    Secteur : Service public

    Informations forums :
    Inscription : Février 2008
    Messages : 442
    Points : 416
    Points
    416
    Par défaut
    Bonjour,

    Je ne veux pas dire de bêtise mais ACCESS n'aime pas avoir plusieurs types de jointure (ext et int) dans une requête, donc il faut passer toutes vos jointures de cette requête en jointure externe.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    SELECT DISTINCT 
       INVAct.Base, 
       INVAct.Region, 
       INVAct.SubRegion, 
       INVAct.SubSubRegion, 
       INVAct.MY, 
       INVAct.SKU, 
       FCal.CalEndDate AS NextMonth,
       INVAct.QTY AS BEGINNING_INVENTORY,
       FCST.QTY AS ENDING_INVENTORY
    FROM ((dbo_BP_PELYCO_ENDING_INVENTORY_ACTUAL AS INVAct 
    LEFT OUTER JOIN dbo_FiscalCalendar_View AS FCal ON INVAct.Month=FCal.CalStartDate) 
    LEFT OUTER JOIN FCST_Detail AS FCST ON FCST.Condition = (INVAct.Region & INVAct.SubRegion & INVAct.SubSubRegion & InvAct.SKU) AND FCST.Month =FCal.CalEndDate)
    En espérant vous avoir aidé.

    Bonne soirée

    Sebing
    Débutant, j’essaie de m’améliorer en essayant d'aider sur le forum
    Merci d’être indulgent sur le code ou réponse proposé je reçois volontiers les critiques qui me feront progresser, mais aussi un (ça fait toujours plaisir de savoir que l on a pu dépanner une personne ).

  3. #3
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    Bonsoir,
    il faut éviter d'utiliser des noms de champs avec des mots réservés : Month est un mot réservé, cela peut avoir des conséquences imprévues. Cela dit, je ne pense pas que le souci vienne de là mais plutôt de ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LEFT OUTER JOIN FCST_Detail AS FCST ON FCST.Condition = (INVAct.Region & INVAct.SubRegion & INVAct.SubSubRegion & InvAct.SKU)
    j'ai du mal à me représenter une jointure externe d'un champ d'une table vers 4 autres d'une autre table ...
    Je pense qu'il faut passer par une sous-requête pour concaténer les 4 champs.
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  4. #4
    Nouveau Candidat au Club
    Femme Profil pro
    Analyste en intelligence d'affaires
    Inscrit en
    Septembre 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste en intelligence d'affaires

    Informations forums :
    Inscription : Septembre 2017
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    tee_grandbois :

    Ce JOIN fonctionne bien, le problème vient de ma date.

    sebing:

    Left join et left outer join, il n'y a pas de différence

  5. #5
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    Ce JOIN fonctionne bien, le problème vient de ma date.
    donc pas besoin d'aide alors ... et puisque tu sais d'où vient ton souci ...
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

Discussions similaires

  1. Problème: UPDATE JOIN ORDER BY
    Par ctobini dans le forum Requêtes
    Réponses: 8
    Dernier message: 29/11/2007, 17h21
  2. Problème INNER JOIN GROUP BY
    Par benjisan dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 16/05/2007, 16h18
  3. Problème avec JOIN
    Par ddcarnage dans le forum Requêtes
    Réponses: 6
    Dernier message: 15/01/2007, 16h40
  4. problème "left join fetch" recup de données associées
    Par ddv_again dans le forum Hibernate
    Réponses: 2
    Dernier message: 19/12/2006, 17h29
  5. [Debutant][Join Sql] problème de join
    Par ultimax dans le forum Langage SQL
    Réponses: 4
    Dernier message: 16/11/2004, 12h01

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