Bonsoir à tous, j'ai un problème avec ma requête.

J'ai 2 requêtes, la première me donne 280 résultats, et la 2ème m'en donne 290.

J'aimerais afficher les 10 utilisateurs qui ne sont pas dans la 1ère requête.

Pour cela j'utilise donc un NOT IN, mais en faisant ça, ca pète le serveur, serait-ce un problème de syntaxe ??


voici ma requête :


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
33
34
35
36
37
38
39
40
41
42
43
SELECT id_user, pseudo,
PASSWORD , fin_abonnement, date_fin, site
FROM utilisateur u, commande c, abonnement a
WHERE u.id_user = c.id_utilisateur
AND c.id_abo = a.id_abo
AND u.sexe = 'h'
AND (
c.id_abo =5
OR c.id_abo =6
OR c.id_abo =41
OR c.id_abo =7
OR c.id_abo =8
OR c.id_abo =9
OR c.id_abo =10
OR c.id_abo =29
)
AND c.valid_banque =1
AND c.reconduction_CODEREPONSE = '00000'
AND c.reconduction_date1 IS NOT NULL
AND c.resiliation_date IS NULL
AND date_fin >= NOW( )
AND u.id_user NOT IN (
 
 
  SELECT id_user
  FROM utilisateur u, commande c, abonnement a
  WHERE u.id_user = c.id_utilisateur
  AND c.id_abo = a.id_abo
  AND u.sexe = 'h'
  AND (
  c.id_abo =5
  OR c.id_abo =6
  OR c.id_abo =41
  OR c.id_abo =7
  OR c.id_abo =8
  OR c.id_abo =9
  OR c.id_abo =10
  OR c.id_abo =29
  )
  AND c.valid_banque =1
  AND c.resiliation_date IS NULL
  AND date_fin >= NOW( )
)