У меня есть 3 таблицы, в которых роль имеет ряд разрешений который находится в Roledetail
таблице я должен узнать PermissionName, RoleId, RoleName, RoleDescription
из этих таблиц:Регистрация 3 таблицы в хранимой процедуре
[Role], Permission, RoleDetail
Таблица [Role]
имеет эти колонки:
RoleID, RoleName, RoleDescription
и таблица Permission
имеет следующие столбцы:
PemissionId, PermissionName
в то время как таблица RoleDetail
имеет следующие столбцы:
RoleDetailId, PermissionId, RoleID
Я хочу, чтобы отобразить столбцы RoleId, RoleName, RoleDescription, PermissionName
на основе данного permissionId
из RoleDetail
таблицы и вот то, что я до сих пор
Alter PROCEDURE usp_GetRoleDetails
@proleId int
AS
BEGIN
SET NOCOUNT ON;
Select r.RoleId,r.RoleName,r.[Description],permissionName from
[Role]r
Inner join RoleDetail d on d.RoleDetailId = r.RoleID
Inner join Permission p on p.PermissionId = d.PermissionId
where r.RoleId = @proleId
END
GO
[SO] не является службой написания кода: вы пытались создать инструкцию 'select' (эта кабина, завернутая в сохраненный процесс позже)? – Richard
Почему бы просто не использовать 'join'? –
Потому что это означало бы, что он должен был бы изучить SQL и использовать собственную энергию. Кажется, что просить других людей сделать основную работу является основной компетенцией многих разработчиков. – TomTom