首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Neo4j密码查询中的节点迭代

Neo4j密码查询中的节点迭代
EN

Stack Overflow用户
提问于 2013-10-11 09:50:28
回答 2查看 386关注 0票数 0

在这种情况下,我把house No's作为节点,我想迭代它们,并将它们作为参数传递给人与人之间的关系,这里是代码。

代码语言:javascript
运行
复制
START n=node(*)
WHERE 
  HAS(n.house_no) 
RETURN n;

从上面我将得到house no的节点,然后将它们传递到另一个查询中

代码语言:javascript
运行
复制
START 
    n=node:node_auto_index(house_no="4-10"),
    n2=node:node_auto_index(houseNo="4-10") 
WHERE 
    HAS(n.house_no) AND HAS(n2.houseNo) AND n.house_no = n2.houseNo
    create UNIQUE
    (n2)-[:LIVESIN]->(n)
    return n2.name

在上面的查询中,我想传递house no节点属性ex:house_no

为什么我迭代节点并将其中的一个属性作为参数传递。有机会合并这两个查询吗?

有人能帮我吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-13 08:25:45

可以在start子句中传递索引查找的参数,如下所示:

代码语言:javascript
运行
复制
START 
    n =node:node_auto_index(house_no={house_no}),
    n2=node:node_auto_index(houseNo={house_no}) 
WHERE 
    HAS(n.house_no) AND HAS(n2.house_no) AND n.house_no = n2.houseNo
CREATE UNIQUE
    (n2)-[:LIVESIN]->(n)
RETURN n2.name

and then pass a map like


{house_no:"4-10"}
票数 2
EN

Stack Overflow用户

发布于 2013-10-12 10:56:38

要组合查询,可以使用WITH。来自文档

在Cypher中,WITH子句用于将一个查询的结果输送到下一个查询。

我从未尝试过基于“管道结果”进行索引查找,这是否有效:

代码语言:javascript
运行
复制
START n=node(*)
WHERE HAS(n.house_no)
WITH n.house_no as house_no
START n2=node:node_auto_index(houseNo=house_no)
CREATE UNIQUE n2-[:LIVESIN]->n
RETURN n2.name
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19315163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档