Bonsoir a tous
Décidément c'est pas mon jour de chance aujourd’hui

Première préoccupation

Voila deux requêtes qui apparament me permettent de reperer des doublons :
requête 1
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
SELECT champ1, champ2, champ3
FROM   MESINFORMATIONS T1
WHERE  EXISTS (SELECT 1
               FROM   MESINFORMATIONS T2
               WHERE  T1.lacle <> T2.lacle
                 AND  T1.champ1 = T2.champ1
                 AND  T1.champ2 = T2.champ2
                 AND  T1.champ3 = T2.champ3)
Réponses : 13154

requête 2 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
SELECT champ1, champ2, champ3
FROM   MESINFORMATIONS T1
WHERE T1.LACLE < ANY (SELECT LACLE
               FROM   MESINFORMATIONS T2
               WHERE  T1.lacle <> T2.lacle
                 AND  T1.champ1 = T2.champ1
                 AND  T1.champ2 = T2.champ2
                 AND  T1.champ3 = T2.champ3)
Réponses : 6677

D'ou mes questions suivantes :
  1. C'est deux requêtes sont elles différentes ?
  2. Comment les comprendre alors ?


Deuxième préoccupation

Voici ma requête de suppression des doublons :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
DELETE
FROM   MESINFORMATIONS T1
WHERE T1.LACLE < ANY (SELECT LACLE
                    FROM   MESINFORMATIONS T2
                    WHERE  T1.LACLE <> T2.LACLE
                      AND  T1.CHAMP1 = T2.CHAMP1
                      AND  T1.CHAMP2 = T2.CHAMP2
                      AND  T1.CHAMP3 = T2.CHAMP3)
Ici ma question est la suivante :
  1. Ou puis je mettre une restriction pour qu'il supprime seulement les lignes ou champ4=2 par expemples ?


j'ai opté pour cette requête mais je ne sais si elle traduit exactement ce que je veux :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
DELETE
FROM   MESINFORMATIONS T1
WHERE T1.LACLE < ANY (SELECT LACLE
                    FROM   MESINFORMATIONS T2
                    WHERE  T1.LACLE <> T2.LACLE
                      AND  T1.CHAMP1 = T2.CHAMP1
                      AND  T1.CHAMP2 = T2.CHAMP2
                      AND  T1.CHAMP3 = T2.CHAMP3
                      AND CHAMP4=2)
Là j'ai vraiment besoin d'aide.

Merci a tous