我正在努力了解如何使用链表来提高性能并在 Neo4j 上创建活动提要。仍在学习 Cypher,所以我有一个问题。我找到了一些链表示例,但我需要列表更大的例子最终把所有的部分放在我的脑海里..
我使用了grepcode中的这段代码,发现它比 Neo4j 手册中的示例更有帮助。但是我还是有点困惑.. 有人可以修改它以在链表中有七个节点和七个项目,然后在它的前面插入一个节点吗?
是的,我正在尝试将最新的状态更新放在链接列表的顶部。这个例子并没有真正做到这一点,但它很接近..所以寻找一些mods..不,我还没有真正编码,仍然试图首先掌握Cypher - 将在接下来的两周内继续研究它.. . 让 Ruby on Rails 一边工作.. 只需要更好地理解与 Cypher/Neo 一起使用的链表。
CREATE zero={name:0,value:0}, two={value:2,name:2}, zero-[:LINK]->two-[:LINK]->zero
==== zero ====
MATCH zero-[:LINK*0..]->before,
after-[:LINK*0..]->zero,
before-[old:LINK]->after
WHERE before.value? <= 1 AND
1 <= after.value?
CREATE newValue={name:1,value : 1},
before-[:LINK]->newValue,
newValue-[:LINK]->after
DELETE old
==== zero ====
MATCH p = zero-[:LINK*1..]->zero
RETURN length(p) as list_length
我想做的是了解前后数据集和零数据集-我几乎拥有它,但想看看它是如何在具有两个以上起始节点的集合上完成的,以消除任何混乱
谢谢!