2017-10-17 103 views
1

我有通过Role将查找PermissionUser以下的Cypher查询:的Cypher查询和多通道引用

MATCH (p:Permission)<-[:CONTAINS]-(r:Role)<-[:HAS]-(u:User) 
WHERE u.id = {userId} AND p.type = {permissionType} AND p.code = {permissionCode} 
RETURN p 

此查询工作正常。

此外,User可以与Permission有直接的关系:

(p:Permission)<-[:HAS]-(u:User) 

如何才能还寻找那些直接与User相关的Permission扩展原始查询?

回答

1

你可以试试这个:

MATCH (p:Permission)<-[:HAS|:CONTAINS*1..2]-(u:User) 
WHERE u.id = {userId} AND p.type = {permissionType} AND p.code = {permissionCode} 
RETURN p 

干杯