如何获取组名的组成员列表

时间:2012-10-05 19:44:21

标签: sql oracle

我有GROUPsUSERsGROUPs可以包含USERs和其他GROUPs

数据存储在一个表NODES中,如下所示,其中PARENT_NDE_ID是包含父组的组/用户。用户始终拥有作为组ID的父级。如果该组没有父级,则父级ID和组ID相等。

NODES
-----
NDE_ID (int)
PARENT_NDE_ID (int)
DESCRIPTION (string, any name)
NDE_TYPE (string, either 'USER' or 'GROUP')

我的问题是,我想获得一个小组成员名单。

我想要制作:

GROUP NAME | MEMBER NAME
---
Group A | Group B
Group A | Bob
Group B | Dave
Group C | Mike

或者,一个构建查询,它接受一个组名并给我一个我可以为每个组名手动运行的成员列表,如:

select NODES.DESCRIPTION, NODES.NDE_TYPE 
where PARENT_NDE_ID = (the id associated with the provided group name string)

任何帮助都非常适合!

1 个答案:

答案 0 :(得分:1)

您需要CONNECT BY - 请阅读以下网址:Oracle documentation