我有这样的疑问:
SELECT U.UserName, C.Name,
FROM CompanyUserMapping CU
INNER JOIN Users U ON U.ID = CU.USERID
INNER JOIN Company C ON C.ID = CU.CompanyID
这将返回哪个用户有权访问哪个公司的结果:
UserNAme CompanyName
------------------------
userOne CompanyOne
UserOne CompanyTwo
UserTwo CompanyOne
我想修改查询,这样我就可以得到:
Username CompanyName1 CompanyName2
----------------------------------------
UserOne CompanyOne CompanyTwo
UserTwo CompanyOne NULL
还有,类似这样的东西:
UserNAme CompanyName
-------------------------------------
userOne CompanyOne, CompanyTwo
UserTwo CompanyOne
任何帮助都是非常感谢的。
发布于 2018-08-30 04:14:59
你可以实现第二个结果,如下所示:
SELECT UI.UserName, Name =
STUFF((SELECT ', ' + C.Name
FROM CompanyUserMapping CU
INNER JOIN Users U ON U.ID = CU.USERID
INNER JOIN Company C on C.ID = CU.CompanyID
WHERE U.UserName = UI.UserName
FOR XML PATH('')), 1, 2, '')
FROM Users UI
GROUP BY UserName
https://stackoverflow.com/questions/52085377
复制相似问题