如何解决Redis图:搜索具有模式属性的n个连续节点?
在python代码中,我得到了节点f的uid的列表。 [1,2,3]。
我想建立一个查询来查找连续连接的节点并返回父节点。
因此,在这种情况下,查询将如下所示:
match (n0)-->(n1)-->(n2)-->(n3)
where n1.uid % 100 = 1 % 100 and n2.uid % 100 = 2 % 100 and n3.uid % 100 = 3 % 100
return n0
如您所见,如果我使用较长的列表,则扩展性不是很好。 [5,3,104,202,....] 该查询将大量增长。
是否可以使用快捷方式来处理不同大小的列表。请记住,节点的顺序必须与数据列表匹配。
解决方法
您可能要考虑从用户输入列表动态构建查询。
q = "MATCH (n0 {uid:list[0]})"
for id in list[1:]:
q += "-->({uid:%d})" % id
q += " RETURN n0"
注释代码未经测试!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。