У меня есть следующий запрос, который выводит результат ниже;T-SQL Right присоединяется ко всем записям, вкл. Выбранная колонка
SELECT
TBLUSERS.USERID,
TBLUSERS.ADusername,
TBLACCESSLEVELS.ACCESSLEVELID,
TBLACCESSLEVELS.AccessLevelName
FROM
TBLACCESSLEVELS INNER JOIN
TBLACCESSRIGHTS ON TBLACCESSLEVELS.ACCESSLEVELID = TBLACCESSRIGHTS.ACCESSLEVELID INNER JOIN
TBLUSERS ON TBLACCESSRIGHTS.USERID = TBLUSERS.USERID
Выход это;
29 administrator 1 AllUsers
29 administrator 2 JobQueue
29 administrator 3 Telephone Directory Admin
29 administrator 4 Jobqueueadmin
29 administrator 5 UserAdmin
29 administrator 6 Product System
27 alan 1 AllUsers
97 andy 1 AllUsers
26 barry 1 AllUsers
26 barry 2 JobQueue
26 barry 3 Telephone Directory Admin
26 barry 4 Jobqueueadmin
26 barry 5 UserAdmin
26 barry 6 Product System
26 barry 7 Newseditor
26 barry 8 GreetingBoard
То, что я хотел бы сделать, это изменить запрос таким образом я получаю все уровни доступа, независимо от погодных условий есть запись для этого пользователя. То, что я также хотел бы сделать, - это какой-то существующий случай, так что я получаю вывод следующим образом;
29 administrator 1 AllUsers True
29 administrator 2 JobQueue True
29 administrator 3 Telephone Directory Admin True
29 administrator 4 Jobqueueadmin True
29 administrator 5 UserAdmin True
29 administrator 6 Product System True
29 administrator 7 Newseditor False
29 administrator 8 GreetingBoard False
27 alan 1 AllUsers True
27 alan 2 JobQueue False
27 alan 3 Telephone Directory Admin False
27 alan 4 Jobqueueadmin False
27 alan 5 UserAdmin False
27 alan 6 Product System False
27 alan 7 Newseditor False
27 alan 8 GreetingBoard False
97 andy 1 AllUsers True
97 andy 2 JobQueue False
97 andy 3 Telephone Directory Admin False
97 andy 4 Jobqueueadmin False
97 andy 5 UserAdmin False
97 andy 6 Product System False
97 andy 7 Newseditor False
97 andy 8 GreetingBoard False
26 Barry 1 AllUsers True
26 Barry 2 JobQueue True
26 Barry 3 Telephone Directory Admin True
26 Barry 4 Jobqueueadmin True
26 Barry 5 UserAdmin True
26 Barry 6 Product System True
26 Barry 7 Newseditor True
26 Barry 8 GreetingBoard True
Таким образом, правила ВСЕГДА показать все записи ACCESSLEVELS и где EXISTS в AccessRights производят истина/ложь, чтобы показать это.
Надеюсь, это имеет смысл и, надеюсь, вам не нужны определения таблиц, поскольку все, с чем мне нужно работать, находится в исходном запросе. Мне просто нужно немного манипулировать им и получить соединение в нужном месте.
спасибо. Pace
вы, сэр, являются джентльменом :) – CaRDiaK