Bonjour à tous,

Je suis devant un problème :
J'ai une table avec 105 000 lignes. Je souhaiterais faire un tri pour n'afficher que certains les plus utilisées (présentes dans les tables entrée / sorties (vidées tous les 2 ans)
Du coup, j'ai fait deux requetes :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
SELECT
Stock.Code_article AS Code_article,  
Stock.CodeColoris AS CodeColoris,  
Articles.Libellé AS Libellé,  
Stock.DernierPxAchat AS DernierPxAchat,   
Stock.Unite AS Unite, 
Stock.QteEnStock AS QteEnStock,   
Stock.QteEnCde AS QteEnCde,   
Stock.QteRes AS QteRes,   
Stock.QteEntrées AS QteEntrées,   
Stock.QteSorties AS QteSorties,  
Stock.QteStkMini AS QteStkMini,   
Stock.QteStkMaxi AS QteStkMaxi,  
Articles.famille AS Famille,  
ArticlesFournisseurs.Codefournisseur As Fournisseur,  
Articles.Obsolète AS Obsolète,   
Stock.Obsolète AS Obsolète_St 
FROM  
Articles, ArticlesFournisseurs, Stock 
WHERE  Articles.Code_article = Stock.Code_article  
AND    Articles.Code_article = ArticlesFournisseurs.Code_article  
AND stock.obsolète = 0 AND Articles.obsolète = 0
and (stock.CodeArtCodeColoris in 
(select EntreeStock.CodeArtCodeColoris
from EntreeStock 
group by EntreeStock.CodeArtCodeColoris) 
OR stock.CodeArtCodeColoris in 
(select SortieStock.CodeArtCodeColoris 
from SortieStock 
group by SortieStock.CodeArtCodeColoris) )
ORDER BY Code_article ASC, CodeColoris ASC
Le nombre de lignes suite à cette requete est de 9 175 lignes

Quand je fait son contraire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
SELECT
Stock.Code_article AS Code_article,  
Stock.CodeColoris AS CodeColoris,  
Articles.Libellé AS Libellé,  
Stock.DernierPxAchat AS DernierPxAchat,   
Stock.Unite AS Unite, 
Stock.QteEnStock AS QteEnStock,   
Stock.QteEnCde AS QteEnCde,   
Stock.QteRes AS QteRes,   
Stock.QteEntrées AS QteEntrées,   
Stock.QteSorties AS QteSorties,  
Stock.QteStkMini AS QteStkMini,   
Stock.QteStkMaxi AS QteStkMaxi,  
Articles.famille AS Famille,  
ArticlesFournisseurs.Codefournisseur As Fournisseur,  
Articles.Obsolète AS Obsolète,   
Stock.Obsolète AS Obsolète_St 
FROM  
Articles, ArticlesFournisseurs, Stock 
WHERE  Articles.Code_article = Stock.Code_article  
AND    Articles.Code_article = ArticlesFournisseurs.Code_article  
and (stock.CodeArtCodeColoris not in 
(select EntreeStock.CodeArtCodeColoris
from EntreeStock 
group by EntreeStock.CodeArtCodeColoris) 
AND stock.CodeArtCodeColoris not in 
(select SortieStock.CodeArtCodeColoris 
from SortieStock 
group by SortieStock.CodeArtCodeColoris) )
ORDER BY Code_article ASC, CodeColoris ASC
J'ai un résultat de 93 546 lignes ....

Entre les deux, j'en ai perdu, et je n'arrive pas à trouver pourquoi.

J'ai essayé de faire une requete de ce type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
SELECT
Stock.Code_article AS Code_article,  
Stock.CodeColoris AS CodeColoris,  
Articles.Libellé AS Libellé,  
Stock.DernierPxAchat AS DernierPxAchat,   
Stock.Unite AS Unite, 
Stock.QteEnStock AS QteEnStock,   
Stock.QteEnCde AS QteEnCde,   
Stock.QteRes AS QteRes,   
Stock.QteEntrées AS QteEntrées,   
Stock.QteSorties AS QteSorties,  
Stock.QteStkMini AS QteStkMini,   
Stock.QteStkMaxi AS QteStkMaxi,  
Articles.famille AS Famille,  
ArticlesFournisseurs.Codefournisseur As Fournisseur,  
Articles.Obsolète AS Obsolète,   
Stock.Obsolète AS Obsolète_St 
FROM  
Articles, ArticlesFournisseurs, Stock 
WHERE  Articles.Code_article = Stock.Code_article  
AND    Articles.Code_article = ArticlesFournisseurs.Code_article  
AND stock.CodeArtCodeColoris NOT IN 
(Select stock.CodeArtCodeColoris 
From stock where (stock.obsolète = 0 AND Articles.obsolète = 0) 
and (stock.CodeArtCodeColoris in (select EntreeStock.CodeArtCodeColoris from EntreeStock group by EntreeStock.CodeArtCodeColoris) 
OR stock.CodeArtCodeColoris in (select SortieStock.CodeArtCodeColoris from SortieStock group by SortieStock.CodeArtCodeColoris)))
L'execution n'est toujours pas finie ...
Pouvez vous m'aider ?