{Access} Requète avec SELECT
Résolu
Gwendo69
Messages postés
147
Date d'inscription
Statut
Membre
Dernière intervention
-
Gwendo69 Messages postés 147 Date d'inscription Statut Membre Dernière intervention -
Gwendo69 Messages postés 147 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un problème avec une requète. Je recupère des données dans plusieurs tables liées. Le soucis c'est que lorsqu'une des tables n'est pas renseignée la ligne est tout simplement ignorée.
Y a-t-il une méthode qui me permettrait de récupérer les bonnes données avec une valeur nulle pour les champs non renseignés?
SELECT [SITE_VEHI].[Libelle_Site], [VEHICULE].[Numero_Immatriculation], [VEHICULE].[Marque], [CONDUCTEUR].[Nom], [CONTRAT_LLD].[Forfait_Contrat]
FROM ((VEHICULE INNER JOIN CONTRAT_LLD ON [VEHICULE].[Numero_Immatriculation]=[CONTRAT_LLD].[Numero_Immatriculation]) INNER JOIN SITE_VEHI ON [VEHICULE].[Numero_Immatriculation]=[SITE_VEHI].[Numero_Immatriculation]) INNER JOIN (CONDUCTEUR INNER JOIN CONDUCT_VEHI ON [CONDUCTEUR].[NNI_Conducteur]=[CONDUCT_VEHI].[NNI_Conducteur]) ON [VEHICULE].[Numero_Immatriculation]=[CONDUCT_VEHI].[Numero_Immatriculation]
WHERE [SITE_VEHI].[Libelle_Site]="Site1"
ORDER BY [VEHICULE].[Numero_Immatriculation];
Peut-être que les INNER JOIN posent problèmes?
Merci d'avance,
Gwendo.
J'ai un problème avec une requète. Je recupère des données dans plusieurs tables liées. Le soucis c'est que lorsqu'une des tables n'est pas renseignée la ligne est tout simplement ignorée.
Y a-t-il une méthode qui me permettrait de récupérer les bonnes données avec une valeur nulle pour les champs non renseignés?
SELECT [SITE_VEHI].[Libelle_Site], [VEHICULE].[Numero_Immatriculation], [VEHICULE].[Marque], [CONDUCTEUR].[Nom], [CONTRAT_LLD].[Forfait_Contrat]
FROM ((VEHICULE INNER JOIN CONTRAT_LLD ON [VEHICULE].[Numero_Immatriculation]=[CONTRAT_LLD].[Numero_Immatriculation]) INNER JOIN SITE_VEHI ON [VEHICULE].[Numero_Immatriculation]=[SITE_VEHI].[Numero_Immatriculation]) INNER JOIN (CONDUCTEUR INNER JOIN CONDUCT_VEHI ON [CONDUCTEUR].[NNI_Conducteur]=[CONDUCT_VEHI].[NNI_Conducteur]) ON [VEHICULE].[Numero_Immatriculation]=[CONDUCT_VEHI].[Numero_Immatriculation]
WHERE [SITE_VEHI].[Libelle_Site]="Site1"
ORDER BY [VEHICULE].[Numero_Immatriculation];
Peut-être que les INNER JOIN posent problèmes?
Merci d'avance,
Gwendo.
A voir également:
- {Access} Requète avec SELECT
- Please select boot device - Forum Matériel & Système
- Acer quick access - Forum logiciel systeme
- Quick Access service ✓ - Forum PC portable
- Désinstaller ACER QUICK ACCESS - Forum Logiciels
- Access appdata - Guide
3 réponses
Bonjour,
Oui, c'est à cause des INNER JOIN.
Apparemment, tu utilises celà sans savoir ce que ça fait... étrange...
A ta place, je me renseignerai d'abord sur les différents types de jointures (INNER, LEFT, RIGHT), avant de chercher à coder des requêtes SQL.
Tu trouveras tout ce dont tu as besoin sur google.
Cordialement, M.
Oui, c'est à cause des INNER JOIN.
Apparemment, tu utilises celà sans savoir ce que ça fait... étrange...
A ta place, je me renseignerai d'abord sur les différents types de jointures (INNER, LEFT, RIGHT), avant de chercher à coder des requêtes SQL.
Tu trouveras tout ce dont tu as besoin sur google.
Cordialement, M.
Hello, s'il s'agit de récupérer les valeurs non renseignées, tu devrais construire tes jointures avec des LEFT Join.
Là dès qu'une liaison sera caduque, tu le saura. NULL remonte : signifie qu'il n'a pas trouvé de correspondance dans la table de droite.
Comme on te l'as indiqué précédemment, renseigne toi sur les différentes types de jointure.
Perso je n'emploie que des LEFT join parce que je monte toujours des schémas en ce sens.
Là dès qu'une liaison sera caduque, tu le saura. NULL remonte : signifie qu'il n'a pas trouvé de correspondance dans la table de droite.
Comme on te l'as indiqué précédemment, renseigne toi sur les différentes types de jointure.
Perso je n'emploie que des LEFT join parce que je monte toujours des schémas en ce sens.