Des enregistrements qui ont une valeur commune sur un champ

Signaler
Messages postés
47
Date d'inscription
dimanche 17 juillet 2005
Statut
Membre
Dernière intervention
22 octobre 2012
-
Messages postés
273
Date d'inscription
samedi 13 juin 2009
Statut
Membre
Dernière intervention
18 avril 2015
-
Bonjour,

je cherche une requête sql en delphi ou en access, qui me permettera d'obtenir à partir d'une table tous les enregistrements qui ont une même valeur sur un champs ,

Exemple :
Code,désignation,couleur,nombre
123, table, jaune, 6 \*
256, chaise, noir, 5
546, armoire,marron, 10
123, bureau, gris, 12 \*
le 1er et le dernier enregistrement ont le même code.

donc je veux avoir une requete qui me fait sortir ces deux enregistrement (qui ont des égalités sur un champ précis)

Merci.

3 réponses

Messages postés
302
Date d'inscription
jeudi 29 septembre 2005
Statut
Membre
Dernière intervention
17 septembre 2013
1
Bonjour,

ça peut se faire comme cela :

SELECT code, COUNT(*) FROM MaTable GROUP BY code;


Luc.
Messages postés
106
Date d'inscription
mardi 13 novembre 2007
Statut
Membre
Dernière intervention
25 octobre 2020
2
Bonjour,
On peut aussi créer un filtre et mettre la propriété du Filtred à True
DataSet.Filter := '123';
Dataset.Filtered := True;
On peut aussi utiliser l'évènement OnFilterRecord
Accept :DataSet['Code'] '123';
OnFilterRecord peut contenir des options de filtres complexes
Parfois les filtres sont plus rapides que les requêtes SQL surtout lorsqu'elles sont simples;


pierrot
Messages postés
273
Date d'inscription
samedi 13 juin 2009
Statut
Membre
Dernière intervention
18 avril 2015
10
Bonjour à tous,

select a.*
from matable a
where a.code in ( select b.code, count(*) from matable b
group by b.code
having count(*) > 1
)
or a.designation in ( select c.designation, count(*) from matable c
group by c.designation
having count(*) > 1
)
or a.couleur in ( select d.couleur, count(*) from matable d
group by d.couleur
having count(*) > 1
)
or a.nombre in ( select e.couleur, count(*) from matable e
group by e.nombre
having count(*) > 1
)
-- tu auras tous les records qui presentent des doublons dans n'importe quel champ.

Bonne journée.
solilog