问题标签 [cypher]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1146 浏览

neo4j - 使用 Cypher 复制不同类型的关系

我想将现有关系复制到新节点。所有节点都已经存在,我想将所有传入关系复制到第二个节点。给定一个节点D和一个图

我想在单个 Cypher 查询中创建以下内容:

只应创建第二行中的关系,因为所有其他节点都已存在。我尝试了以下 Cypher 查询(这是一个无效查询 ( Don't know how to extract parameters from this type: org.neo4j.kernel.impl.core.RelationshipProxy)):

0 投票
3 回答
2855 浏览

neo4j - 通过关系属性的总和限制 Neo4j 密码查询结果

有没有办法通过关系属性的总和来限制密码查询?

我正在尝试创建一个密码查询,该查询返回距离起始节点 100 以内的节点。所有的关系都有一个距离集,一条路径中所有距离的总和就是到起始节点的总距离。

如果 WHERE 子句可以处理聚合函数,我正在寻找的可能看起来像这样

有没有一种方法可以对 where 子句的路径中的关系距离求和?

0 投票
4 回答
9592 浏览

neo4j - neo4j:有没有办法/如何选择随机节点?

我想检索特定数量的随机节点。该图由 3 000 000 个节点组成,其中一些是源,一些是目标,一些是两者。

目的是检索随机源,由于我不知道如何选择随机源,因此程序会生成从 1 到 3 000 000 的 k 个随机数,它们代表节点 ID,然后丢弃所有随机选择的非源节点。由于这个过程很耗时,我想知道是否可以使用密码查询直接选择随机源。

如果选择所有来源,查询将如下

有谁知道如何直接使用密码选择有限数量的随机节点,或者如果不可能,建议任何解决方法?

0 投票
2 回答
1054 浏览

nosql - Neo4j 的 Cypher 查询语言是开源的吗?

Neo4j 的语言 Cypher 的状态如何?我真的很喜欢它,但我想避免 Neo4j 锁定。是否有像 Grmelin 中那样的其他 Cypher 界面?

问候

0 投票
1 回答
473 浏览

neo4j - 当条件为真时停止 neo4j/cypher 查询

我有一个图,其中每个节点代表一个 java 类,每个节点都有一个名为命名空间的属性。我想匹配起始节点和最终节点共享一个命名空间但所有中间节点不共享该命名空间的模式。对于有 3 个类(A 类 -> B 类 -> C 类)的情况,我有:

这似乎工作正常。当我尝试扩展它时,我尝试了:

问题是我不想要任何中间节点与 inside1 共享相同命名空间的路径。所以我的问题是,无论如何我可以告诉它“当你点击一个名称空间等于 inside1.namespace 的节点时停止”?

谢谢。

0 投票
2 回答
3790 浏览

neo4j - Neo4j:REST API Cypher 查询以查找两个节点之间的关系

我是 Neo4j 的新手,正在使用 REST API 创建节点和关系。我有两个节点 NA 和 NB,它们通过关系 RC 连接。'NA - RC - NB'。在创建节点和关系之前,我会检查节点和它们之间的关系是否不存在。我想出了如何检查一个节点是否存在并且正在努力如何检查两个节点之间的关系是否存在。我想出了这个 Cypher 查询。

节点具有属性“名称”。执行此查询时,我得到空的“数据:[]”。

有什么建议么?我尝试查看 Neo4j 文档和一些教程,但不太明白这一点。

TIA

这是java代码:

0 投票
2 回答
2832 浏览

neo4j - 按路径成本的密码顺序

我对 cypher 和 neo4j 非常陌生。我想根据总路径成本获取和订购点 A 和 B 之间的所有路径。在这种情况下,成本是一个整数关系属性。路径成本将是关系属性的总和。

我正在查看 cypher 的 ORDER BY 语句的一些示例,但是,通过这些示例,您似乎必须按已经分配给被排序对象的属性进行排序,在这种情况下,由于路径没有一个静态的“成本”属性。

(这与路径的长度/数量不同)

我很确定这样的事情对于密码来说并不太复杂。

0 投票
1 回答
2483 浏览

neo4j - Neo4j Web Admin 如何显示关系属性?

我已经生成了一个 Neo4j 图表,并使用“数据浏览器”上的“样式”规则创建了图表的可视化。我能够显示节点的属性。看起来样式规则只能应用于节点。但是我想显示(在数据浏览器上可视化)关系的属性。这可能吗?如果是这样,我该怎么做?

我通读了 Neo4j 文档并在 Neo4j 论坛中进行了搜索,但没有运气。

我很感激任何帮助。

TIA

例如:

在人口统计的情况下,创建的是关系“是”的属性。

0 投票
1 回答
185 浏览

neo4j - 意外的 neo4j 密码查询结果

我想确定与认识特定人的邻居的对话持续时间的相对百分比。

例如,当首先观察节点 A 时,我们必须知道他花了多少时间与他的所有邻居交谈,这是通过以下查询执行的:

接下来,我们必须检查他的哪些邻居认识特定的人(例如 c),并仅将 b 认识 c 的 a 和 b 之间的对话持续时间相加:

这里似乎不合逻辑的是,第二个总和大于第一个,而第二个应该只是第一个的一部分。有谁知道获得这样的结果可能是什么问题?该错误出现在 15000 个用户中的 7 个用户上。

0 投票
1 回答
2642 浏览

neo4j - Neo4j 连接节点的聚合/计数

我正在尝试对连接到节点 A 的节点进行计数,其中节点 A 是从节点 B 开始的 Cypher 查询的一部分,我得到了意想不到的结果。这是一个示例设置。假设我们正在查看书籍和所有者,并且书籍引用其他书籍,而所有者当然拥有书籍:

因此,假设我正在查看 B1 书,并且我想找到引用它的每一本书,然后计算拥有该施引书的每个人所拥有的书籍。所以如果我从 B1 开始,我应该找到所有者 O2 和 O3,因为每个人都拥有一本引用 B1 的书。如果我计算他们拥有的书籍,我应该得到 O2 的 1 和 O3 的 2。

因此,首先,仅列出所有者的查询可以正常工作:

这将按预期返回名称。但是这个查询:

似乎它应该到达 c,它是所有者列表,然后通过 OWNS 关系到拥有的书籍作为 d,并计算它们。但相反,我得到:

感觉就像它忽略了已经通过其他 OWNS 链接找到的书籍/节点——由 b 表示的那些。有没有办法在单个查询中执行此操作,或者最好将所有者收集为 c,然后再次查询每个所有者?感觉这应该是可能的,但我还没有想通。任何想法都会很棒 - 在此先感谢。