Bonjour à tous,
J'aurais besoin de votre aide pour la syntaxe d'une requête SQL. Voici mon problème :
- Je possède une table de la forme
en français, ce que j'aimerais se dirait parID_Candidat......ID_Langue
.......1....................1
.......1....................2
.......1....................3
.......2....................1
.......2....................3
.......3....................2
- "Quelles sont les ID des candidats sachant parler le langage 1 et 3 ?"
=> réponses : candidats 1 et 2
- "Quelles sont les ID des candidats sachant parler le langage 1,2 et 3 ?"
=> réponses : candidat 1
J'ai tenté les requêtes suivantes :
Quelqu'un aurait-il une petite idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 SELECT ID_Candidat FROM MaTable WHERE ID_Langue = 1 OR ID_Langue = 3 /* jobtiens la liste de ceux qui parlent au moins un de ces langages, ce qui n'est pas ce que je souhaite */. SELECT ID_Candidat FROM MaTable WHERE ID_Langue IN (1,3) /* qui comme je m'en doutais fait exactement la même chose que précédemment */ SELECT ID_Candidat FROM MaTable WHERE ID_Langue = 1 AND ID_Langue = 3 /* qui ne renvoie aucun résultat car en soit, aucun ID_Langue ne vaut à la fois 1 et 3... */
Partager