Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/02/2012, 21h05   #1
Membre du Club
 
bonero pross
Inscription : janvier 2010
Messages : 160
Détails du profil
Informations personnelles :
Nom : bonero pross

Informations forums :
Inscription : janvier 2010
Messages : 160
Points : 58
Points : 58
Par défaut Formule Personalisee pour trouver les doublons

Bonjour tout le monde,
J’ai la table ci-dessous et j’iamerais reperer/trouver les doublons sur les champs :
bID, bFirstName et bLastName.
la reponse doit etre la ligne :
1---Alain---Dubois ---2(ie le nombre de doublon)

TableB
bID bFirstName bLastName
1 Alain Dubois
1 Alain Dubois
1 Alain LeGentil
2 Bonero BB
3 Rico Dupont
3 Rico Duval
7 Albert AA
8 Jerome JJ


Pour ce faire, j’utilise ma propre requete SQL qui est la suvante et cela donne le meme resultat que l’assistant de doublons d'Access.
Par contre, la requete SQL de l’assistant differe principalement de la mienne au niveau de la condition HAVING ….

Ma requete :
Code :
1
2
3
4
5
6
7
8
9
10
Select  bID
	,bFirstName
	,bLastName
	,Count(bID) AS DuplicateCounter
From TableB
Group BY 
	bFirstName
	,bLastName
	,bID
HAVING  Count(bID)  > 1


La requete SQL de l’assistant :

Code :
1
2
3
4
5
6
7
8
9
SELECT First(TableB.bID) AS [bID Field]
, First(TableB.bFirstName) AS [bFirstName Field]
, First(TableB.bLastName) AS [bLastName Field]
, Count(TableB.bID) AS NumberOfDups
FROM TableB
GROUP BY TableB.bID
, TableB.bFirstName
, TableB.bLastName
HAVING (((Count(TableB.bID))>1) AND ((Count(TableB.bLastName))>1));
Question:
Quelle est la meilleure ecriture?
Existent-ils de cas ou ma requete ne donnerait pas la bon resultat ?
je ne comprends pas le rajout par l'assistant de la condition AND (Count(TableB.bLastName))>1


Merci de me repondre.
Cordialement.
Bonero est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2012, 21h27   #2
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 417
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 417
Points : 4 450
Points : 4 450
bonsoir,

la 1ère requête est très bien alors que l'assistant doublon fait ce qu'il peut.

Mieux encore, remplace count(bId) par count(*).
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h44.


 
 
 
 
Partenaires

Hébergement Web