我有一种情况,我有 2 个表“用户”和“角色”表,它们通过多对多关系相互关联,多对多关系存储在名为“UserRoles”的第三个表中。我想编写一个查询来显示不同的用户,但在一行中显示与特定用户关联的所有角色。
比如下面的3张表:
users
UserName UserId
test11 000_1
test12 000_2
test13 000_3
test14 000_5
roles
Role Name Role ID
Admin 100_1
superuser 100_2
reader 100_3
writer 100_4
UserRoles
RoleID UserID
100_1 000_1
100_2 000_1
100_3 000_1
100_2 000_2
100_3 000_2
100_4 000_2
100_3 000_3
100_4 000_3
100_1 000_5
100_2 000_5
100_3 000_5
100_4 000_5
那么如何编写一个查询,显示如下一行,每个用户的角色用分号分隔?
UserName Role Name
test11 Admin;superuser;reader