Bonjour,

Voila je developpe une petite application sous Android et j'ai un problème très bête sur une requète. Seulement je ne vois pas comment je vais pouvoir m'en sortir...

Donc j'ai une table A qui contient ceci :

Id | name
10 | André
11 | Raymond
12 | Fréderic

Et j'ai une table B qui contient ceci :

id_A | id_cat
10 | 4
10 | 6
10 | 7
11 | 3
11 | 6
12 | 7
12 | 2

Je voudrais réaliser une requète SQL qui exclus certains enregistrement, de cette manière :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
SELECT A.id, A.name FROM A
LEFT JOIN B ON B.id_A = A.id
WHERE id_cat NOT IN (2,3)
ORDER BY A.name ASC;
Vous l'aurez compris, une personne peut entrer dans une ou plusieurs catégories. Si j'envoie la requête ci dessus, les lignes qui contiennent 2 et 3 dans l'id_cat ne remonte pas, mais les autres si.
Cela me donne ce résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
    10   |   André
    10   |   André
    10   |   André
    11   |   Raymond
    12   |   Fréderic
Je voudrais pouvoir exclure des résultats 11 et 12...
Bien evidemment si je mets un DISTINCT sur le A.id, je retrouve avec 3 lignes...
En gros je voudrais que seul André remonte car il n'a pas d'id_cat à 2 ou a 3.

Y a t-il un moyen compatible avec SQLite de faire ceci ?

En vous remerciant par avance
Cadoudal56