bonjour à tous,

peut-être ce problème est il célèbre, mais moi je découvre et je ne comprends pas ce qui se passe...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
SELECT     TOP 7 *
FROM         table1
WHERE     (table1.count_prd <> 10) AND (NOT EXISTS
                          (SELECT     *
                            FROM          table2
                            WHERE      table2.id = table1.id)) AND (NOT EXISTS
                          (SELECT     *
                            FROM          table3
                            WHERE      table3.id = table1.id))
cette requête marche très bien (exécutée en 2-3 secondes, et idem sans le top)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
SELECT     TOP 6 *
FROM         table1
WHERE     (table1.count_prd <> 10) AND (NOT EXISTS
                          (SELECT     *
                            FROM          table2
                            WHERE      table2.id = table1.id)) AND (NOT EXISTS
                          (SELECT     *
                            FROM          table3
                            WHERE      table3.id = table1.id))
cette requête ne s'exécute pas, le délai d'attente expire alors que c'est rigoureusement la même que la précédente (avec un top inférieur à 6 , même problème)

Une explication?

Merci d'avance.