0

我遇到了使用 nodejs 对 neo4j 的计数请求的问题。

这是我的问题:当我插入数据时,它将如下所示:

start a = node(0)

create unique a-[:HAS_ID]->(b{id:'xx'})

create unique b-[:HAS_INFO]->(c{info:'xx'})

return a,b,c;

因为它是唯一节点,所以如果存在相同的节点,它不会插入新节点。但是,我想计算调用此查询的请求数。前任 :

   request: -domain/id01/info

     --return a node[0], b node[1] and c node[2]

添加另一个数据:

     request: -domain/id02/info
      -- return : a node[0], b node[3], c node[4]

再次调用它:

     request: -domain/id01/info

     --return a node[0], b node[1] and c node[2] //but here is any attribute or properties count to 2.

我读过任何关于力量的解决方案。它告诉我创建一个关系属性作为示例:

     [:HAS_INFO{strength:num}]

让它增加,但我还是不明白。任何人都请给我解决方案并告诉我该怎么做。谢谢你。

更多信息:在 Neo4j 中表示(和增加)关系强度

4

1 回答 1

1

您可以使用该CASE语句,请参阅http://gist.neo4j.org/?6052414示例。随意了解基本要点并改进它!

MATCH path=(a)-[rel:HAS_INFO]->(b)
WHERE a.name?='A' AND b.name?='Info'
SET rel.weight = (
  CASE
   WHEN not(has(rel.weight))
   THEN 0
   ELSE rel.weight + 1
  END)
RETURN path, rel.weight;
于 2013-07-22T09:18:55.630 回答