我有3个表:TblUsers
,tblBridge
和tblAssignments
。
网桥包含用户的ID以及该用户的相应AssignmentID。
我试图找到具有特定作业@Assignment
的用户,但也找到tblUser.isAdmin = Yes
的位置。
我觉得和Joins一样可能,我只是找不到如何完成它的好例子。
答案 0 :(得分:1)
我假设这是在一个接收@assignment
var的存储过程中。
select tu.[Users] from TblUsers tu
join tblBridge tb on tu.id=tb.TblUsersid
join tblAssignments ta on ta.id = tb.tblAssignmentsid
where ta.[Assignment] = @Assignment
and tu.[isAdmin] = 'Yes'
答案 1 :(得分:0)
SELECT u.* FROM tblBridge b
JOIN tblUsers u ON u.ID = b.tblUsersID
JOIN tblAssignments a ON a.ID = b.tblAssignmentsID
WHERE u.isAdmin = 'yes' AND a.name = 'searched assignment'
很多很多关系因此您需要选择多对多表并将其加入到分配中,并且用户也会将管理条件放在哪里。
我不确定这些名称是否与您在数据库中的名称完全相同,因此您需要根据需要进行调整。
我不知道您在分配表中寻找的字段,因此请根据您的需要更改a.name
。