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

Access Discussion :

Requête avec double jointure.


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 73
    Points : 48
    Points
    48
    Par défaut Requête avec double jointure.
    Bonjour,

    Je souhaite réaliser une requête Access qui me donne le dernier enregistrement fait pour chaque valeur de deux champs d'une table de référence.
    Pour cela, je fait deux jointures qui relient les deux champs de la table référence à la table de données. Un des deux champs joints ne peut pas être nul. par contre le deuxième peut l'être.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT [Gestion-Données].Sens, Last([Gestion-Données].Transaction) AS DernierDeTransaction, [Gestion-Données].Remarque, [Gestion-Données].[Remarque complémentaire]
    FROM [Gestion-Données] INNER JOIN [Gestion-Données mouvements fixes  Réf] ON ([Gestion-Données].[Remarque complémentaire] = [Gestion-Données mouvements fixes  Réf].[Remarque complémentaire]) AND ([Gestion-Données].Remarque = [Gestion-Données mouvements fixes  Réf].Remarque)
    GROUP BY [Gestion-Données].Sens, [Gestion-Données].Remarque, [Gestion-Données].[Remarque complémentaire];
    La requête fonctionne, mais le résultat ne prend pas en compte les enregistrement lorsque le deuxième champs est nul.

    Avez-vous une explication ?

    Merci d'avance

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 280
    Points : 12 974
    Points
    12 974
    Par défaut
    Bonjour,
    Si j'ai bien compris la question, il faut utiliser une jointure externe.

    Sinon il faudrait nous donner un jeu de test et le résultat attendu.

    Tatayo.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 73
    Points : 48
    Points
    48
    Par défaut
    Citation Envoyé par tatayo Voir le message
    Bonjour,
    Si j'ai bien compris la question, il faut utiliser une jointure externe.

    Sinon il faudrait nous donner un jeu de test et le résultat attendu.

    Tatayo.
    Bonjour,
    Merci pour votre réponse.

    J'ai effectivement essayé avec left et right join et pas de fonctionnement correct.
    Je vous joins une exemple. La table Bon résultat est ce que j'espère. La requête réelle est un peu plus compliquée. Mais déjà cette partie fonctionnait, je pense que je m'en sortirai.
    Je n'ai pas trouvé comment transmettre un fichier Access. Donc, je vous donne un exemple par l'image ci-dessous.

    Cdt
    Nom : Test.jpg
Affichages : 61
Taille : 377,0 Ko

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 064
    Points : 24 673
    Points
    24 673
    Par défaut
    Bonjour,

    Envoyer un jeu de test c'est généralement dans le but de tester et d'éviter de perdre du temps (nous sommes tous bénévoles) à saisir un jeu de test qui de toute façon ne correspondra pas.
    Il est clair qu'avec une image on ne peut pas tester.

    Sinon on peut aussi :
    • Envoyer des fichiers CSV (ça passe)
    • Mettre le fichier de données sur un cloud (one drive, google drive, drop box, kcloud...) et donner le lien.
    • ...

    Attention à la confidentialité des données, certaines sociétés n'aiment pas que leur data se promène sur le net.

    Pour ton problème :

    Créer des relations sur des colonnes de texte c'est pas franchement une bonne idée à moins que cela ne soit que pour un traitement temporaire de données.
    Les créer sur du texte long (mémo) c'est encore pire.

    Pour ton problème de null, tu peux créer une requête intermédiaire par table en utilisant un NZ(macolonne,"") de chaque côté. C'est une idée à tester.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

Discussions similaires

  1. [2008R2] Multiples lignes en une ligne avec double jointure
    Par chaours dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 15/10/2013, 09h33
  2. api Criteria Jointure avec Double restriction
    Par lunatix dans le forum Hibernate
    Réponses: 4
    Dernier message: 21/04/2011, 17h20
  3. Réponses: 7
    Dernier message: 10/10/2009, 15h55
  4. [Requete] Probleme avec double jointure et cast
    Par guromgd dans le forum Développement
    Réponses: 5
    Dernier message: 04/05/2009, 13h42
  5. requete avec double jointure externe
    Par cdu dans le forum Langage SQL
    Réponses: 8
    Dernier message: 04/01/2006, 14h54

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