如何使用neo4j

时间:2018-06-22 23:03:50

标签: neo4j cypher

很抱歉成为关于图数据库和neo4j的完整菜鸟。我正在尝试使用neo4j设计我的第一个图形数据库,但是在阅读他们的hyperedge example之后,我对在当前情况下该怎么做感到有些困惑。

enter image description here

假设除了“用户”,“组”和“角色”之外,您还具有“权限”(一个角色可以具有n个权限)。

我有兴趣返回给定用户的所有权限,因此我尝试转换hyperedges示例,最后得到了一些显然永远行不通的东西:

一个名为has_permission_in_role_in_group的Relationshipnip。显然那是行不通的。因为我们要返回给定用户的所有权限。

如果hyperedges在这里不好,那么您如何通过neo4j有效地获得用户权限?

1 个答案:

答案 0 :(得分:2)

假设给定的Role的{​​{1}}独立于PermissionUser,则不需要涉及Group的超边,而您只需要在Permission及其每个hasPermission之间建立一种Role关系。

在这种情况下,要获取“ User1”的所有不同Permission,只需使用以下查询即可:

Permission