路径代表用户'浏览历史。
我正在考虑应该采用哪种设计结构。
例如,
红色路径表示用户已浏览
[页面A] - > [页面B] - > [页面B] - > [页面C] - > [第B页] - > [第A页]
蓝色路径表示用户已浏览
[第C页] - > [第D页] - > [第A页]
如果我想在第A页之前选择浏览路径第C页,
答案应为蓝色路径
我如何在密码查询,
中设计查询哪种设计适合我的情况?
谢谢。
我尝试在我的模型中应用您的查询
我想知道节点5231 是否早于节点7222
但它无法获得任何输出。
MATCH p=(x)-[*0..]->(y {code: '5231'})
WHERE NOT ()-->(x)
RETURN p
ORDER BY LENGTH(p)
LIMIT 1;
答案 0 :(得分:0)
为每个路径创建不相交的子图是浪费的,并且可能不会使解决您的用例变得更容易。
这是一个查询(使用统一图表),查找最早出现C
的路径(或其中一个,如果有平局)。
MATCH p=(x)-[*0..]->(y {id: 'C'})
WHERE NOT ()-->(x)
RETURN p
ORDER BY LENGTH(p)
LIMIT 1;
此特定查询结束它在C
节点上找到的路径,并且不打算包含任何后续节点(可能有许多分支,并且不清楚您想要遵循哪个分支)。