关于查出不匹配参数的数据

语句是这样的
MATCH p=(v:tag_object)-le:relation*1…3)-(v2:tagobject) WHERE id(v) ==“SYS_AI409” and v.tag_object.object_type == “system” and v2.tag_object.object_type == “system” RETURN p;
查出结果却是这样的

查询的语义是 限制了 v 和 v2,并没有限制中间的点的条件哈

如何增加中间点的限制呢?

object_type == “system”

MATCH p=(x:player)-[*1..3]-(y:player) 
WHERE id(x) == "player100" 
AND all(node IN nodes(p)[1..-1] WHERE node.player.age > 39)
RETURN p

这是一个参考表达

[1…-1] 代表是什么意思啊?所有?

就是去掉起点终点哈,你要是所有点的约束条件都一样,可以直接去掉下标限制,就是 list 下标

MATCH p=(v:tag_object)-le:relation*1…3)-(v2:tagobject) WHERE id(v) ==“SYS_AI409” and all(node in nodes(p) WHERE node.tag_object.object_type == “system”) RETURN p;
像这样吗?get

对的


try newbing

1 个赞

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。