Я использую MS SQL Express 2008, и моя проблема заключается в следующем. В моей системе есть некоторые пользователи, которые имеют две роли «1» и «2», а другие имеют только одну роль «2». В этой хранимой процедуре я просто хочу получить пользователей, которые имеют одну роль. Я хочу получить конкретного пользователя из системы, у которого есть только роль «2».
Вот мой sp:
SELECT tblUsers.user_id, tblUsers.user_username, tblUsers.user_password, tblUsers.user_name, tblUsers.user_surname, tblUsers.user_email
FROM tblRoles
INNER JOIN tblUserRole ON tblRoles.role_id = tblUserRole.role_id
INNER JOIN tblUsers ON tblUserRole.user_id = tblUsers.user_id
WHERE (tblUserRole.role_id = 2) AND NOT (tblUserRole.role_id = 1)
это утверждение все еще дает мне пользователей с двумя ролями.