neo4j-查找与具有与x长度的属性值列表匹配的节点的关系的所有节点

ccnixon

更具体地说,我想执行以下操作(如果有帮助,请使用node / JS):

假设您有3个工作条件的列表(“ JavaScript”,“ PHP”,“ MySQL”)。

我有一个图形设置,其中每个Person节点可以连接到许多Skill节点。我希望能够运行一个查询,该查询将返回Person与查询中指定的至少一个至所有技能节点具有连接的所有节点,然后按每个用户有多少个肯定的连接进行排序。如果工作条件是变量,使此查询有效的最有效方法是什么?

到目前为止,这就是我所拥有的。同样,这可行,但是如何使OR语句成为变量?

MATCH (n:Persons)-[r:KNOWS]-(x:Skill) WHERE x.name = 'PHP' OR x.name = 'JavaScript' OR x.name = 'MySql' RETURN DISTINCT n COUNT(n) ORDER BY COUNT(n) DESC

赛博

您可以使用IN运算符来测试值是否与列表中的值匹配。

MATCH (n:Persons)-[:KNOWS]-(x:Skill)
WHERE x.name IN ['PHP', 'JavaScript', 'MySql']
RETURN n, COUNT(x) AS nSkills
ORDER BY nSkills DESC;

由于返回子句使用COUNT()功能聚合n,它是多余的使用DISTINCT n,所以查询遗漏DISTINCT

注意:为了提高效率,您应该将列表作为参数传递例如,如果needed_skills是包含技能列表的参数,则查询将如下所示:

MATCH (n:Persons)-[:KNOWS]-(x:Skill)
WHERE x.name IN {needed_skills}
RETURN n, COUNT(x) AS nSkills
ORDER BY nSkills DESC;

这是列表参数的另一个示例。)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Neo4J 试图找到所有具有匹配属性值的节点

来自分类Dev

neo4j cypher-如何查找与节点列表有关系的所有节点

来自分类Dev

Neo4j(密码):如何查找具有特定关系的所有节点?

来自分类Dev

在Neo4j中查找具有属性的最大(最小)值的节点

来自分类Dev

Neo4j:如何匹配属性数组中具有公共值的节点

来自分类Dev

Neo4j和Cypher:匹配与目标节点具有单一关系的节点

来自分类Dev

合并具有NULL属性Neo4j的节点

来自分类Dev

使用 Cypher 在 Neo4j 中查找所有节点和关系直到定义的路径长度

来自分类Dev

选择在Neo4j中具有所有关系的节点

来自分类Dev

所有节点子节点的 Neo4j 密码

来自分类Dev

查找具有多个传入关系的neo4j节点

来自分类Dev

使用cypherquery在neo4j中仅查找具有多个传入关系的节点

来自分类Dev

Neo4j 更高效的 Cypher 查询,用于查找具有关系的连接节点

来自分类Dev

Neo4j 密码查询:具有指定节点和关系属性的 AllShortestPaths

来自分类Dev

如何列出Neo4j中具有共同属性的所有节点

来自分类Dev

在 Neo4j 中添加与现有节点的关系

来自分类Dev

在Neo4J中查找具有相同属性的节点

来自分类Dev

Neo4j cypher返回属性匹配任何数组元素的所有节点

来自分类Dev

搜索Neo4j中从所有节点到所有节点的匹配项

来自分类Dev

Neo4j密码用于连接到值列表的所有节点,获取关系参数之和

来自分类Dev

Neo4j:为所有匹配查询的节点分配唯一值

来自分类Dev

无法使用py2neo删除具有关系的neo4j节点

来自分类Dev

使用Neo4j查找最远的节点(没有任何传入关系的节点)

来自分类Dev

如何在 Neo4j 中获取具有重复属性值的节点?

来自分类Dev

Neo4j获取所选节点下的所有节点和关系

来自分类Dev

Neo4j / Cypher删除具有关联关系的节点和子节点

来自分类Dev

如果属性存在,则 Neo4J 合并节点并创建另一个具有关系的节点

来自分类Dev

根据neo4j中的父关系查找节点

来自分类Dev

NEO4J:根据多种关系查找节点

Related 相关文章

  1. 1

    Neo4J 试图找到所有具有匹配属性值的节点

  2. 2

    neo4j cypher-如何查找与节点列表有关系的所有节点

  3. 3

    Neo4j(密码):如何查找具有特定关系的所有节点?

  4. 4

    在Neo4j中查找具有属性的最大(最小)值的节点

  5. 5

    Neo4j:如何匹配属性数组中具有公共值的节点

  6. 6

    Neo4j和Cypher:匹配与目标节点具有单一关系的节点

  7. 7

    合并具有NULL属性Neo4j的节点

  8. 8

    使用 Cypher 在 Neo4j 中查找所有节点和关系直到定义的路径长度

  9. 9

    选择在Neo4j中具有所有关系的节点

  10. 10

    所有节点子节点的 Neo4j 密码

  11. 11

    查找具有多个传入关系的neo4j节点

  12. 12

    使用cypherquery在neo4j中仅查找具有多个传入关系的节点

  13. 13

    Neo4j 更高效的 Cypher 查询,用于查找具有关系的连接节点

  14. 14

    Neo4j 密码查询:具有指定节点和关系属性的 AllShortestPaths

  15. 15

    如何列出Neo4j中具有共同属性的所有节点

  16. 16

    在 Neo4j 中添加与现有节点的关系

  17. 17

    在Neo4J中查找具有相同属性的节点

  18. 18

    Neo4j cypher返回属性匹配任何数组元素的所有节点

  19. 19

    搜索Neo4j中从所有节点到所有节点的匹配项

  20. 20

    Neo4j密码用于连接到值列表的所有节点,获取关系参数之和

  21. 21

    Neo4j:为所有匹配查询的节点分配唯一值

  22. 22

    无法使用py2neo删除具有关系的neo4j节点

  23. 23

    使用Neo4j查找最远的节点(没有任何传入关系的节点)

  24. 24

    如何在 Neo4j 中获取具有重复属性值的节点?

  25. 25

    Neo4j获取所选节点下的所有节点和关系

  26. 26

    Neo4j / Cypher删除具有关联关系的节点和子节点

  27. 27

    如果属性存在,则 Neo4J 合并节点并创建另一个具有关系的节点

  28. 28

    根据neo4j中的父关系查找节点

  29. 29

    NEO4J:根据多种关系查找节点

热门标签

归档