我在数据库中有两个表
1-文件表: 字段:
2-用户表:
现在我有了第3个表,它是“文件已分配”,它保存了哪些文件被分配给哪些用户的轨道。
字段:
我想检索所有不相关的记录,即检索未分配给特定文件的所有用户。
这是我对相关记录的查询。
从用户i中选择* 加入FileRequested r 在i.UserID = r.UserID上 其中r.File_ID = 1175
现在我想要检索未分配给该文件的所有用户
问题:可以将一个文件分配给多个用户。 我尝试过以下查询但是没有用
从用户i中选择* 加入FileRequested r 在i.UserID = r.UserID上 其中r.File_ID!= 1175或r.File_ID为空
答案 0 :(得分:1)
如果我能正确理解,您可以将NOT IN
与子查询一起使用:
SELECT *
FROM User i
WHERE i.UserID NOT IN (SELECT UserID
FROM FileAssigned
WHERE File_ID = 1175)
答案 1 :(得分:1)
SELECT * From Users as a
Where not exists(select 1
from FileAssigned as b
Where b.UserID=a.UserID)