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 :

Afficher après jointure selon date enregistrements vides


Sujet :

Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Décembre 2011
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2011
    Messages : 21
    Par défaut Afficher après jointure selon date enregistrements vides
    Bonjour,

    Je travail sur deux bases de données, une théorique (1700 lignes) qui représente les contracts du fournisseur sur un voyage, l'autre réalisé (200000 lignes) qui représente les voyages effectués . Les valeurs communes de ces deux tables sont les points de départs, arrivés, fournisseurs.

    Je dois rapprocher le réalisé au théorique même si il n’y a pas eu de réalisé sur une période donnée.
    Plus précisement, un voyage peut etre effectué par plusieurs fournisseurs (théorique), mais par exemple sur un mois donné (Mai) seuls 2 fournisseurs sur 3 effectuent le voyage.
    Ce que je voudrais c'est afficher donc le voyage fait par les 2 fournisseurs mais en plus le fournisseur qui n'a pas effectué le voyage pour le mois concernés


    J'ai essayé en concaténant les variables points de départs, arrivés, fournisseurs mais ceci ne fonctionne pas, et même la solution des propriétés de jointures externes ne marchent pas...
    Fichiers attachés Fichiers attachés

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

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 962
    Par défaut
    Bonsoir,
    si tu veux que les fournisseurs qui ne sont dans aucune des 2 tables apparaissent, il faut que tu crées, soit une table des fournisseurs, soit une sous-requète union basée sur les 2 tables avec un regroupement sur les fournisseurs.
    Ensuite tu construis ta requète avec la table (ou la sous-requète) Fournisseurs et les 2 tables (théorique et réalisé) avec des jointures externes.

  3. #3
    Membre averti
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Décembre 2011
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2011
    Messages : 21
    Par défaut
    Merci de ta réponse.

    Le problème est que les fournisseurs sont bien présents dans les dates et quand je lance ma requête, il me rapproche bien les valeurs communes.

    Mais si un voyage est effectué en Mars par un fournisseur, il ne va pas me mettre de valeur nulle pour Mai pour ce même fournisseur

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 399
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 399
    Par défaut
    bonjour,

    une proposition à affiner:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    TRANSFORM Count([Table réalisé].[Numéro de voyage]) AS [CompteDeNuméro de voyage]
    SELECT [Table théorique].[Code fournisseur], [Table théorique].Origin, [Table théorique].Destination
    FROM [Table théorique] INNER JOIN [Table réalisé] ON ([Table théorique].Destination = [Table réalisé].[Lib plateforme arrivée]) AND ([Table théorique].Origin = [Table réalisé].[Lib plateforme départ]) AND ([Table théorique].[Code fournisseur] = [Table réalisé].[Code fournisseur])
    GROUP BY [Table théorique].[Code fournisseur], [Table théorique].Origin, [Table théorique].Destination
    ORDER BY [Table théorique].[Code fournisseur], [Table théorique].Origin, [Table théorique].Destination
    PIVOT Format([Date début opé (jj/mm/aaaa)],"mm") In ("01","02","03","04","05","06","07","08","09","10","11","12");
    @+

    Philippe

  5. #5
    Membre averti
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Décembre 2011
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2011
    Messages : 21
    Par défaut
    Merci je vais regarder cette éventualité

Discussions similaires

  1. Rechercher dernier enregistrement selon date max
    Par Asdorve dans le forum Requêtes
    Réponses: 9
    Dernier message: 12/09/2012, 14h15
  2. [WD15] date vide non affiche après filtre?
    Par 3alit dans le forum WinDev
    Réponses: 2
    Dernier message: 27/08/2012, 08h33
  3. [AC-2000] Garder enregistrements selon date
    Par electronedf dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 28/12/2011, 19h40
  4. Formulaire - Afficher x enregistrements vides
    Par benejepo dans le forum Access
    Réponses: 1
    Dernier message: 09/08/2007, 14h47
  5. [Access] dernier enregistrement selon date
    Par sebos21 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 24/05/2006, 18h31

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