[英]NEO4j cypher query to match same words
我有两个字BANGALURU和BENGALURU。
现在我必须在neo4j中创建节点,这样我只需要创建一个节点,这意味着BANGALURU和BENGALURU应该被视为一个并且只创建一个节点
请告诉我如何为此创建neo4j cypher查询。
对于支持使用索引快速查找的同一属性,没有一种方法可以使节点具有两个值。
我建议创建一个:具有该名称的位置节点,该节点与另一个节点具有:ALIAS关系。 也许还为节点添加:别名标签。 就像是:
(:Location:Alias{Type:'Place', name:'BENGALORE'})<-[:ALIAS]-(:Location{Type:'Place', name:'BANGALORE'})
您可以使用:Location节点,而不使用:Alias作为任何其他连接的根节点。
但是,匹配会稍微复杂一些。 查询查询可能如下所示:
MATCH (a:Location)<-[:ALIAS*0..1]-(l:Location)
WHERE a.name = {nameLookup} AND NOT l:Alias
这将适用于别名和非别名节点,因为关系模式0的最小边界将匹配:Location节点与其自身( a
和l
将是同一节点)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.