匹配并获取neo4j中2个公共字段值的计数

时间:2015-05-28 09:24:12

标签: neo4j cypher

有2名学生:a和b。 a喜欢化学,phy,bio和b喜欢phy,math,bio。他们每周都有一个研讨会,我想知道他们的科目是否按照desc顺序的workshop_attended计算。

目前我正在使用此查询根据参加的研讨会获得他喜欢的科目:

MATCH (s:student{id:"1",name:"a"} )-[:workshop_attended]-(b:workshop)-[y:subject_likes]-(c:subjects)  RETURN c,count(c) as total

顺便说一下,上面的查询是否正确w.r.t计数和科目?

现在我想通过参加研讨会以及每个主题的数量来了解他们共同喜欢多少共同科目。我怎么能这样做。我试过这个但我总是有0行。

MATCH (s:student{id:"1",name:"a"} )-[:workshop_attended]-(b:workshop)-[y:subject_likes]-(c:subjects),
 (s2:student{id:"2",name:”b"} )-[:workshop_attended]-(b2:workshop)-[y2:subject_likes]-(c:subjects)

  RETURN c,count(c) as total

我也试过了:

MATCH (s:student{id:"1",name:"a"} )-[:workshop_attended]-(b:workshop)-[y:subject_likes]-(c:subjects),
 (s2:student{id:"2",name:”b"} )-[:workshop_attended]-(b2:workshop)-[y2:subject_likes]-(l:subjects)

  RETURN c,count(c),l,count(l) as total

即使这也是错误的,我也会因为某种原因获得更多行。我真的很感激任何帮助。

0 个答案:

没有答案