综合指数用法

时间:2017-08-02 12:53:44

标签: neo4j cypher

我有这个Cypher查询,我无法弄清楚如何在运行它时利用复合索引。我在两个节点上尝试了typeforbuyingrenting属性的索引,但索引未显示在查询的PROFILE上。< / p>

  MATCH (prof:Profile)
  MATCH (prop:Property)
  WHERE prof.type = prop.type
  and prof.for = prop.for
  and prof.buying = prop.buying
  and prof.renting = prop.renting

甚至可以实现这个目标吗?

1 个答案:

答案 0 :(得分:1)

这将解决问题(对于第二个节点类型):

PROFILE MATCH (pp:Property)
WITH pp, pp.type as type, pp.for as for, pp.bying as buying, pp.renting as renting
MATCH (pf:Profile)
WHERE pf.type = type
AND pf.for = for
AND pf.buying = buying
AND pf.renting = renting
RETURN pp, pf;

未使用索引的原因是它没有使用它的实际值,这些值仅在扫描节点后才可用。

希望这有帮助。

此致 汤姆