1

我有一个带有“项目”、“员工”和“技术”等节点的图表。项目与技术、员工与技术之间存在关系。

我想找到了解项目使用的所有技术的员工。我的 cyper 查询如下所示:

start project=node:project(name = "Project1") 
match technology <-[:USED]- project , employee -[:KNOWS]-> technology 
return employee

运行此查询时,我让所有员工了解项目使用的一种技术,并希望员工了解项目使用的所有技术。这在密码中可能吗?

4

2 回答 2

3

您可以尝试以下方法:

start project=node:project(name = "Project1") 
match employee -[:KNOWS]-> technology <-[:USED]- project 
with count(technology) as knownTech, employee, project
where length(()<-[:USED]-project)=knownTech
return employee

请参阅查找具有所有公共中介的节点

于 2013-04-08T10:17:09.453 回答
2

我可能会使用它来避免计算每个员工项目使用的技术数量:

start project=node:project(name = "Project1") 
match technology <-[:USED]- project 
with count(technology) as projectTech, project
match employee -[:KNOWS]-> technology <-[:USED]- project 
with count(technology) as knownTech, projectTech, employee
where projectTech=knownTech
return employee
于 2013-04-09T06:44:17.167 回答