(Neo4j,Cypher)如何设置关系的增量数?
我用的是neo4j。我想做的是为搜索结果创建一个根节点,并创建从根节点到搜索结果节点的关系。我想为每个关系的属性设置递增数。(Neo4j,Cypher)如何设置关系的增量数?,neo4j,Neo4j,我用的是neo4j。我想做的是为搜索结果创建一个根节点,并创建从根节点到搜索结果节点的关系。我想为每个关系的属性设置递增数。 如果可能的话,只需一个查询。很抱歉解释得不够充分。 这就是我想做的。 还有更简洁的方法吗 // create test data WITH RANGE(0, 99) AS indexes, ['Paul', 'Bley', 'Bill', 'Evans', 'Robert', 'Glasper', 'Chihiro', 'Yamanaka', 'Fred', 'Hersc
如果可能的话,只需一个查询。很抱歉解释得不够充分。 这就是我想做的。 还有更简洁的方法吗
// create test data
WITH RANGE(0, 99) AS indexes,
['Paul', 'Bley', 'Bill', 'Evans', 'Robert', 'Glasper', 'Chihiro', 'Yamanaka', 'Fred', 'Hersch'] AS names
UNWIND indexes AS index
CREATE (p:Person { index: index, name: (names[index%10] + toString(index)) });
// create 'Results' node with relationships to search result 'Person' nodes.
// 'SEARCH_RESULT' relationships have 'order' and 'orderBy' properties.
CREATE(x:Results{ts: TIMESTAMP()})
WITH x
MATCH(p:Person)
WHERE p.name contains '1'
MERGE(x)-[r:SEARCH_RESULT]->(p)
WITH x, r, p
MATCH (x)-[r]->(p)
WITH x, r, p
ORDER BY p.name desc
WITH RANGE(0, COUNT(r)-1) AS indexes, COLLECT(r) AS rels
UNWIND indexes AS i
SET (rels[i]).order = i
SET (rels[i]).orderBy = 'name'
RETURN rels;
// validate
MATCH(x:Results)-[r:SEARCH_RESULT]->(p:Person)
RETURN r, p.name ORDER BY r.order;
你能澄清你的问题吗?我不明白。您正在搜索将要创建的内容?所有节点都用于搜索结果?根节点的区别是什么?您如何知道哪些节点应该连接到根节点?你真的需要添加更多的信息。事实上,您至少应该提供一个数据模型和您已经尝试过的代码。