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 :

Microsoft Access - Left/Right Outer Join


Sujet :

Langage SQL

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de Erakis
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2003
    Messages
    523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 523
    Par défaut Microsoft Access - Left/Right Outer Join
    Bonjour à tous,

    J'essais de faire un Right Outer Join mais ça ne fonctionne pas bien à mon avis avec MS Access

    (Voir l'image en pièce jointe pour mes deux tables et leur relations.)

    C'est très simple comme exemple mais ça suffira :
    La table Jours contient tous les jours de la semaine.
    La table ClientsJours contient tous les jours qu'un client peut posséder.

    Voilà ce que contient ma table Jours :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ID          NOM
    1         Dimanche
    2         Lundi
    3         Mardi
    4         Mercredi
    5         Jeudi
    6         Vendredi
    7         Samedi
    Et ma table ClientsJours :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    ClientID       JourID
       1             1
       1             4 
       1             5
       2             1
       3             6
    J'aimerais pour un client ayant un ID précis, récupérer TOUS les lignes étant dans la table Jours et ainsi qu'un champs addtionnel avec un 0 ou un 1 pour dire si il le client le possède.

    Voilà ce à quoi ça devrait ressembler pour le client #1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
      Jours     Sélectionner
    Dimanche         1
    Lundi            0 
    Mardi            0
    Mercredi         1
    Jeudi            1
    Vendredi         0
    Samedi           0
    Voilà ce que j'ai comme requête jusqu'ici. Faut dire que j'ai l'habitude de faire des LEFT OUTER JOIN avec MySQL et MS SQL et ça fonctionne très bien !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT Jours.Nom, 
               IIf(IsNull([JourID]),0,1) AS Sélectionné 
    FROM Jours RIGHT OUTER JOIN 
            ClientsJours ON Jours.ID = ClientsJours.JourID
    WHERE ClientsJours.ClientID = 1;
    Mais ça ne fonctionne pas ! Il me renvoit seulement ceux qui sont présent dans la table ClientJours. Moi je veux TOUS ceux de la table Jours...

    Bref, merci d'avance pour votre aide
    Images attachées Images attachées  
      0  0

Discussion fermée
Cette discussion est résolue.

Discussions similaires

  1. fonctionnement du RIGHT OUTER JOIN hibernate
    Par Pinkwyzard dans le forum Hibernate
    Réponses: 0
    Dernier message: 26/05/2009, 13h20
  2. [SQL2K5][MDX] Left ou Right Outer Join en MDX
    Par Jinroh77 dans le forum SSAS
    Réponses: 8
    Dernier message: 27/08/2008, 10h49
  3. [CRXI] Problème avec Left/Right Outer
    Par Lo² dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 26/07/2007, 12h15
  4. Right Outer Join
    Par RodEpsi dans le forum Langage SQL
    Réponses: 10
    Dernier message: 15/03/2007, 19h30
  5. [migration] right outer join (+) vers SQL Standard
    Par Kahiros dans le forum Oracle
    Réponses: 7
    Dernier message: 02/01/2006, 10h41

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