我有3个表如何通过在MySql中使用join来获取第3个表的值 table1
RowID UserID RoleID
1 1 2
2 171 3
表2
RowID RoleID PermissionID
1 2 2
2 2 3
3 3 14
4 3 15
表3:
PermissionID PermissionName
2 Edit organisation
3 Delete organisation
14 Create group
15 Edit group
16 Delete group
这里我只知道UserID,如果假设UserID是171,那么我应该从table1获取roleid(3)并从表2中获取PermissionID(14,15),然后获取PermissionName(Create group,Edit)表3中我必须将它存储在一个列表中。我该怎么做。我正在使用c#和mysql。感谢
答案 0 :(得分:1)
从DB中选择的SQL查询:
SELECT p.PermissionID, p.PermissionName
FROM users u
INNER JOIN roles r ON r.RoleID = u.RoleID
INNER JOIN permissions p ON p.PermissionID = r.PermissionID
下一步:(但使用ExecuteReader()代替ExecuteNonQuery())