Vérifier qu'un enregistrement n'existe pas dans une table donnée
Posté : 26 oct. 2018, 06:07
Bonjour,
Je sèche et je lance donc un petit appel à l'aide. Voici mon sujet : je fais un site d'e-learning et je cherche à proposer à l'utilisateur de faire une leçon qu'il n'a pas encore faite ou pas encore terminée.
Dans une table `lessons_done`, j'ai les colonnes `user_id` et `done`
Ce que je souhaite faire, c'est récupérer les id des leçons dans un autre table `data_lessons`
OU lessons_done.done = '0' (0=pas encore terminé et 1=terminé)
OU AUSSI il n'y a pas d'enregistrement dans `lessons_done` avec user_id = xxx et lesson_id = yyy
Et c'est là que je sèche.
Voilà ce que j'ai tenté comme code mais je ne serais pas étonné d'avoir un souci de logique.
Je sèche et je lance donc un petit appel à l'aide. Voici mon sujet : je fais un site d'e-learning et je cherche à proposer à l'utilisateur de faire une leçon qu'il n'a pas encore faite ou pas encore terminée.
Dans une table `lessons_done`, j'ai les colonnes `user_id` et `done`
Ce que je souhaite faire, c'est récupérer les id des leçons dans un autre table `data_lessons`
OU lessons_done.done = '0' (0=pas encore terminé et 1=terminé)
OU AUSSI il n'y a pas d'enregistrement dans `lessons_done` avec user_id = xxx et lesson_id = yyy
Et c'est là que je sèche.
Voilà ce que j'ai tenté comme code mais je ne serais pas étonné d'avoir un souci de logique.
Code : Tout sélectionner
SELECT data_lessons.lesson_id, data_courses.category
FROM data_courses
INNER JOIN data_lessons
ON data_courses.course_id = data_lessons.course_id
INNER JOIN flw_lessons_done
ON data_lessons.lesson_id = flw_lessons_done.lesson_id
WHERE NOT EXISTS (SELECT *
FROM flw_lessons_done
WHERE flw_lessons_done.user_id = '1002')