并行节点搜索

一个用于并行(如果可能)查找节点的工具。这些过程返回一个节点列表或一个包含节点 ID、标签以及执行搜索所基于的属性的“精简”记录列表。

限定名称 类型

apoc.search.node
apoc.search.node(labelPropertyMap ANY, operator STRING, value STRING) - 在对多个索引进行并行搜索后,返回所有找到的唯一 NODE 值。

过程

apoc.search.nodeAll
apoc.search.nodeAll(labelPropertyMap ANY, operator STRING, value STRING) - 在对多个索引进行并行搜索后,返回所有找到的 NODE 值。

过程

apoc.search.nodeReduced
apoc.search.nodeReduced(labelPropertyMap ANY, operator STRING, value STRING) - 在对多个索引进行并行搜索后,返回找到的唯一 NODE 值的精简表示。精简的 NODE 值表示包括:节点 ID、节点标签和被搜索的属性。

过程

apoc.search.nodeAllReduced
apoc.search.nodeAllReduced(labelPropertyMap ANY, operator STRING, value ANY) - 在对多个索引进行并行搜索后,返回找到的 NODE 值的精简表示。精简的 NODE 值表示包括:节点 ID、节点标签和被搜索的属性。

过程

这些过程会传递以下参数

labelPropertyMap

'{ label1 : "propertyOne", label2 :["propOne","propTwo"] }'

(JSON 或 MAP)对于每个标签-属性组合,将并行执行搜索(如果可能):Label1.propertyOne、label2.propOne 和 label2.propTwo。

searchType

'exact' 或 'contains' 或 'starts with' 或 'ends with'

不区分大小写的字符串搜索运算符

searchType

"<", ">", "=", "<>", "⇐", ">=", "=~"

运算符

search

'Keanu'

实际的搜索词(字符串、数字等)。

示例
CALL apoc.search.nodeAll('{Person: "name",Movie: ["title","tagline"]}','contains','her') YIELD node AS n RETURN n
call apoc.search.nodeReduced({Person: 'born', Movie: ['released']},'>',2000) yield id, labels, properties RETURN *