javascript - 在 Neo4j 中使用 UNWIND 语句创建 Node 时如何指定使用哪条记录?

标签 javascript node.js neo4j cypher

我正在使用 Neo4j 和 Javascript 驱动程序,并尝试通过一组参数创建一些 Node ,有两种类型的记录。

第一条记录

<小时/>
testObject = {

 created: timeStamp,
 uuid: uid,
 finalScore: correctNum;
}

这是一个中心 Node ,我希望周围有许多具有相同结构的 Node (定义如下)。

<小时/>

第二条记录

<小时/>
responseObject = {

 response: finalAnswer,
 responseTime: responsetime,
 backgroundNoise: noise,
}

参数里面有很多这样的记录,每一项都有不同的值,比如响应值、响应时间和背景噪音。

我的问题

<小时/>
UNWIND $responses AS responseObject CREATE (t:Test) SET t = responseObject

我想要做的是选择在创建 Node 和设置属性时使用哪个记录。根据记录文件 记录是有序映射的一种形式,因此,可以通过位置索引或文本键来访问所包含的值。使用 UNWIND 时可以在查询级别完成此操作吗?例如,responseObject[2] 将使用第三条记录而不是第一条记录。

最佳答案

如果您只想从列表中获取一个元素,请使用索引,而不是UNWIND。使用UNWIND,您将获得列表的所有元素。

例如,创建仅包含 $responses 第三个元素的 Node :

CREATE (t:Test) SET t = $responses[2]

关于javascript - 在 Neo4j 中使用 UNWIND 语句创建 Node 时如何指定使用哪条记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54803163/

相关文章:

javascript - 如何从随机生成的数组中排除某些值

database - Neo4j + Redis?是好是坏?

linux - 如何在 ubuntu 14.04 中安装 Node Linux 二进制文件 (.tar.xz)

javascript - JQuery:帮助解决 ".live"和 ".scroll"

javascript - 在委托(delegate)事件上触发最近的按钮

javascript - 如何将 .prettierignore 文件基于 .gitignore

node.js - 需要内存中的模块而不是磁盘中的模块 - 这可能吗?

java - Neo4j通过特定属性获取Node Java API

neo4j - 如何使用 Cypher 获取与多个节点相关的节点,这些节点又与 Neo4j 中的多个节点相关

javascript - 如何在 React.js 中动态添加和删除表格行