3.3.4 START语句

可以通过遗留索引(Legacy Index)查找开始点。

提示:提示:START语句应当仅用于访问遗留的索引。所有其他的情况,都应使用MATCH代替。

Cypher中的每个查询描述了一个模式,一个模式可以有多个开始点。一个开始点是模式中的一个关系或者节点。使用START时,只能通过遗留索引寻找来引出开始点。注意,使用一个不存在的遗留索引将报错。START图例如图3-8所示。

图3-8 START图例

3.3.4.1 通过索引获取节点

1.通过索引搜索(Index Seek)获取节点

当采用索引搜索查找开始点时,可以使用node:index-name(key = "value")。在本例中存在一个名为nodes的节点索引。

查询:

结果:

2.通过索引查询(Index Query)获取节点

当采用复杂的Lucene查询来查找开始点时,语法为node:index-name("query")。这样就可以写出很高级的索引查询。

查询:

结果:

3.3.4.2 通过索引获取关系

当采用索引搜索查找开始点时,可以使用relationship:index-name(key = "value")。在本例中存在一个名为rels的关系索引。

查询:

结果: