Как вывести каждое значение из raw через Print или что-то еще в SQL - PullRequest
1 голос
/ 19 марта 2020

У меня есть код

DECLARE @UserRolesList NVARCHAR(MAX) = 'Admin, Dog, BranchManager, Naid'
--DECLARE @UserRolesList NVARCHAR(MAX) = 't1, t2, t3'

DECLARE @UserRoles TABLE (Name VARCHAR(max))

INSERT INTO @UserRoles
SELECT value 
FROM STRING_SPLIT(@UserRolesList, ',')

SELECT * FROM UserRole u 
              JOIN @UserRoles r ON u.Name = TRIM(r.Name)

И мне нужно вывести каждое значение из строки результата объединения что-то вроде этого Print('Admin, ' Adminitration role ...') и так далее, как я могу это сделать? enter image description here

1 Ответ

0 голосов
/ 19 марта 2020

Я подозреваю, что вы хотите, чтобы роли были объединены для каждого пользователя:

SELECT u.user_id, STRING_AGG(u.name, ', ') as roles
FROM UserRole u JOIN
     @UserRoles r
     ON u.Name = TRIM(r.Name)
GROUP BY u.user_id;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...