Requête Access sans doublons
Résolu/Fermé
Terminus
-
23 nov. 2020 à 20:09
Terminus900 Messages postés 21 Date d'inscription dimanche 1 novembre 2020 Statut Membre Dernière intervention 7 décembre 2021 - 24 nov. 2020 à 12:58
Terminus900 Messages postés 21 Date d'inscription dimanche 1 novembre 2020 Statut Membre Dernière intervention 7 décembre 2021 - 24 nov. 2020 à 12:58
A voir également:
- Ne pas afficher les doublons dans une requête access
- Supprimer les doublons excel - Guide
- Doublons photos - Guide
- Afficher mot de passe wifi android - Guide
- Supprimer les doublons photos gratuit - Télécharger - Nettoyage
- Afficher calendrier outlook dans google agenda - Guide
3 réponses
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
23 nov. 2020 à 21:08
23 nov. 2020 à 21:08
bonjour,
peux-tu,
soit partager ton fichier,
soit partager les sources SQL de tes requêtes, en t'assurant qu'il soit clair à quelle table appartient chaque champ
quand tu écris "je parcours les enregistrements", s'agit-il du formulaire ou du sous-formulaire?
peux-tu,
soit partager ton fichier,
soit partager les sources SQL de tes requêtes, en t'assurant qu'il soit clair à quelle table appartient chaque champ
quand tu écris "je parcours les enregistrements", s'agit-il du formulaire ou du sous-formulaire?
Terminus900
Messages postés
21
Date d'inscription
dimanche 1 novembre 2020
Statut
Membre
Dernière intervention
7 décembre 2021
24 nov. 2020 à 00:37
24 nov. 2020 à 00:37
voici le code sql de la requete source du sous formulaire :
SELECT DISTINCT clients.nom, clients.prenom, clients.civilité, commandes.id_com, commandes.fkey_idclient, commandes.date_com, detaille_com.det_num, detaille_com.fkey_idCom, detaille_com.fkey_refProd, detaille_com.Det_qte, detaille_com.statut_com, detaille_com.liv_com, produits.designation, produits.pu, produits.poids, produits.stock, [Det_qte]*[pu] AS montant
FROM (clients INNER JOIN commandes ON clients.id_client = commandes.fkey_idclient) INNER JOIN (produits INNER JOIN detaille_com ON produits.Ref_prod = detaille_com.fkey_refProd) ON commandes.id_com = detaille_com.fkey_idCom;
et celle du formulaire :
SELECT DISTINCT clients.id_client, clients.nom, clients.prenom, clients.civilité, clients.ncnib, clients.tel, clients.adresse, commandes.fkey_idclient, commandes.id_com
FROM produits INNER JOIN ((clients INNER JOIN commandes ON clients.id_client = commandes.fkey_idclient) INNER JOIN detaille_com ON commandes.id_com = detaille_com.fkey_idCom) ON produits.Ref_prod = detaille_com.fkey_refProd
GROUP BY clients.id_client, clients.nom, clients.prenom, clients.civilité, clients.ncnib, clients.tel, clients.adresse, commandes.fkey_idclient, commandes.id_com;
SELECT DISTINCT clients.nom, clients.prenom, clients.civilité, commandes.id_com, commandes.fkey_idclient, commandes.date_com, detaille_com.det_num, detaille_com.fkey_idCom, detaille_com.fkey_refProd, detaille_com.Det_qte, detaille_com.statut_com, detaille_com.liv_com, produits.designation, produits.pu, produits.poids, produits.stock, [Det_qte]*[pu] AS montant
FROM (clients INNER JOIN commandes ON clients.id_client = commandes.fkey_idclient) INNER JOIN (produits INNER JOIN detaille_com ON produits.Ref_prod = detaille_com.fkey_refProd) ON commandes.id_com = detaille_com.fkey_idCom;
et celle du formulaire :
SELECT DISTINCT clients.id_client, clients.nom, clients.prenom, clients.civilité, clients.ncnib, clients.tel, clients.adresse, commandes.fkey_idclient, commandes.id_com
FROM produits INNER JOIN ((clients INNER JOIN commandes ON clients.id_client = commandes.fkey_idclient) INNER JOIN detaille_com ON commandes.id_com = detaille_com.fkey_idCom) ON produits.Ref_prod = detaille_com.fkey_refProd
GROUP BY clients.id_client, clients.nom, clients.prenom, clients.civilité, clients.ncnib, clients.tel, clients.adresse, commandes.fkey_idclient, commandes.id_com;
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
24 nov. 2020 à 12:50
24 nov. 2020 à 12:50
si tu utilises les requêtes hors (sous-)formulaire, as-tu le même soucis "clients qui passe a plusieurs reprises"?
DISTINCT est souvent utilisé pour cacher des défauts dans la conception de la base de données ou des requêtes.
tu écris "un formulaire qui regroupe tous les champs de la table clients et la clé étrangère fkey_idclient".
- la clé étrangère est-elle en lien avec le champ clients.id_client? si oui, pourquoi l'ajouter dans la requête?
- pourquoi as-tu ajouté commandes.id_com dans le SELECT du formulaire?
je me demande si ceci n'est pas suffisant pour le formulaire:
DISTINCT est souvent utilisé pour cacher des défauts dans la conception de la base de données ou des requêtes.
tu écris "un formulaire qui regroupe tous les champs de la table clients et la clé étrangère fkey_idclient".
- la clé étrangère est-elle en lien avec le champ clients.id_client? si oui, pourquoi l'ajouter dans la requête?
- pourquoi as-tu ajouté commandes.id_com dans le SELECT du formulaire?
je me demande si ceci n'est pas suffisant pour le formulaire:
SELECT clients.id_client, clients.nom, clients.prenom, clients.civilité, clients.ncnib, clients.tel, clients.adresse FROM clients
Terminus900
Messages postés
21
Date d'inscription
dimanche 1 novembre 2020
Statut
Membre
Dernière intervention
7 décembre 2021
24 nov. 2020 à 12:58
24 nov. 2020 à 12:58
Salut ! j ai trouver une solution qui marche bien. Merci