34,594
社区成员
发帖
与我相关
我的任务
分享
SELECT MenuName FROM menuInfo a
WHERE a.RoleID=1 AND exists(SELECT 1 FROM RoleMenuInfo WHERE a.RoleID=RoleID AND CHARINDEX(','+a.MenuID+',',','+MenuID+',')>0)
你的RoleMenuInfo表 字段MenuID nvarchar(200) 长度这么段,放不了多少个把。
如果不重名,在DISTINCT 下
--少个and
--try this
select MenuName from menuInfo a
where exists(select 1 from RoleMenuInfo where a.id=id and charindex(a.MenuID,MenuID)>0)
SELECT
*
,STUFF((SELECT ','+MenuName FROM menuInfo WHERE ','+a.MenuID+',' LIKE '%,'+MenuID+',%'),1,1,'') AS MenuName
FROM RoleMenuInfo AS a
--try this
select MenuName from menuInfo a
where exists(select 1 from RoleMenuInfo where a.id=id charindex(a.MenuID,MenuID)>0)