Bonjour à tous,
Je suis totalement débutant en SQL. Je cherche à faire une requête qui me retourne une liste en excluant un élément. J’ai les deux tables suivantes:
Table1(classe,…)
Table2(fournitures,…..)
Si je lance la requête ci-dessous,j’obtiens la liste des classes à l’intérieur desquelles on trouve un tableau:
Code :
- select classe,fournitures
- from table1 a,table2 b
- where a.clé table1=b.clé table2
- /*clé table 1=clé table2*/
- and fournitures=’tableau’
- order by classe
|
Je voudrais maintenant obtenir la liste des classes sans tableau.
J’ai écrit:
and fournitures<>’tableau’
ou encore :
and fournitures not in(select fournitures from table2 where fournitures=’tableau’)
Mais dans les deux cas, j’obtiens en fait la liste des classes avec leurs fournitures sauf les tableaux.
Par exemple, si la classe 203A dispose entre autres d’un tableau, de bureaux, de chaises…,cette classe ressortira mais dans les fournitures n’apparaîtra pas le tableau. Je précise que je n’ai pas de colonne comptabilisant les fournitures du type :
Classe fournitures Nombre
203A tableau 1
203A bureaux 32
Voici mon tableau
classe fournitures
203A tableau
203A bureau
203A bureau
204 écran
204 chaise
204 chaise
...........
205 placard
206 tableau
…..
Il y a autant de lignes qu’il y a de fournitures (je sais qu’avec As que je peux avoir le résultat précédent:1,32..). Ici, je voudrais que ressortent uniquement les salles 204 et 205 puisqu'on ne trouve pas de tableau dans celles-ci.
Merci d'avance
Message édité par TAM136 le 26-05-2008 à 14:35:27