J'ai les tables d'utilisateurs et de groupes configurées comme suit.Requête SQL pour que tous les utilisateurs ne soient pas dans le groupe
users
id int
groups
id int
users_groups
user_id int
group_id int
données Exemple:
+---------+----------+
| user_id | group_id |
+---------+----------+
| 1 | 1 |
| 1 | 2 |
| 2 | 1 |
| 3 | 2 |
| 3 | 3 |
| 4 | 1 |
| 4 | 2 |
| 5 | 2 |
+---------+----------+
est-il un moyen de sélectionner tous les utilisateurs qui ne sont pas dans un groupe donné? J'ai essayé de joindre les tables users
et users_groups
et d'ajouter, disons, une condition group_id != 1
, mais je finis par obtenir l'utilisateur quand ils sont dans un autre groupe, par exemple les utilisateurs [1, 3, 3, 4, 5]. Donc quand je dis que je veux des utilisateurs qui ne font pas partie d'un groupe donné, group_id != 1
dans ce cas, les résultats d'exemple devraient être des utilisateurs [3, 5].