【发布时间】:2014-12-12 21:17:05
【问题描述】:
这里是数据库表
群组用户
GroupID - UserID
--------------------
00001 - user1
00002 - user1
00003 - user2
群组
GroupID - GroupName - Locked - Deleted
---------------------------------------------
00001 - gruop1 - True - False
00002 - gruop2 - False - False
00003 - gruop3 - False - False
我正在从 GroupsUsers 表中获取下面给出的查询中特定组的 UserId,但我还想检查 Groups 表中 where 子句中的组 ID 是 locked=true 还是 delete=true,那么它不应该在结果集。
这是我尝试过的方法
SELECT DISTINCT GU.UserId From
GroupsUsers AS GU
INNER JOIN Groups AS G
ON GU.GroupID = G.GroupId
WHERE (((G.GroupId)=00001)) AND (((G.Locked)=False)) OR (((G.Deleted)=False));
但是这个查询返回给我所有的用户
我只想获取未锁定或删除的特定组的用户
【问题讨论】:
-
请发表您的有效结果
-
您的查询不会产生任何结果。您的
GroupId='00001'正在选择仅您不想想要选择的记录。
标签: sql ms-access inner-join