Question: Comment puis-je utiliser le schéma ci-dessous pour obtenir une liste d'utilisateurs qui n'ont PAS signé un document SI ils ont un rôle qui est inclus pour un document?
Contexte:
J'ai une table d'utilisateurs. Les utilisateurs ont des rôles. C'est une configuration simple :
Table des rôles : Role_ID | Nom
Table des utilisateurs : User_ID | Nom
Table des utilisateurs_rôles : User_ID | Role_ID
Maintenant, je dois ajouter une table de Documents :
Table des documents : Document_ID | Nom
Je dois savoir quand un utilisateur a signé un document :
Table des documents_utilisateurs : User_ID | Document_ID
Jusque-là, c'est assez simple.
Mais maintenant ça se complique - je dois ajouter une restriction sur les documents, donc je peux avoir des documents attribués à plusieurs rôles :
par exemple, le Document_ID 1 est pour Role_ID (3,4,5).
Je suppose que je dois faire :
Table des rôles_documents : Role_ID | Document_ID
Mais - voici la partie difficile que je ne sais pas : Comment puis-je utiliser le schéma ci-dessus pour obtenir une liste d'utilisateurs qui n'ont PAS signé un document SI ils ont un rôle qui est inclus pour un document?