APOC 支持

APOC(Cypher 上的强大过程)是一个 Neo4j 库,提供对其他过程和函数的访问,扩展了 Cypher 查询语言的使用。有关 APOC 的更多信息,请参阅APOC 文档

如下所示,APOC Core 函数和过程的子集已预先安装并在 Aura 中可用

apoc

限定名称 类型

apoc.case
对于给定LIST<ANY>中的每对条件和只读查询,此过程将运行第一个条件计算结果为真的查询。如果所有条件都不为真,则改为运行ELSE查询。

过程

apoc.help
返回可用 APOC 过程和函数的描述。如果提供了关键字,它将仅返回名称中包含该关键字的过程和函数。

过程

apoc.version
返回当前安装的 APOC 版本。

函数

apoc.when
如果条件计算结果为真,则此过程将运行只读ifQuery,否则将运行elseQuery

过程

apoc.agg

限定名称 类型

apoc.agg.first
返回给定集合中的第一个值。

函数

apoc.agg.graph
将收集到的所有不同的NODERELATIONSHIP值返回到一个MAP中,其键为nodesrelationships

函数

apoc.agg.last
返回给定集合中的最后一个值。

函数

apoc.agg.maxItems
返回一个MAP {items: LIST<ANY>, value: ANY},其中value键是存在的最大值,items表示具有相同值的所有项。项目列表的大小可以限制为给定的最大大小。

函数

apoc.agg.median
返回所有非空INTEGERFLOAT值的数学中位数。

函数

apoc.agg.minItems
返回一个MAP {items: LIST<ANY>, value: ANY},其中value键是存在的最小值,items表示具有相同值的所有项。项目列表的大小可以限制为给定的最大大小。

函数

apoc.agg.nth
返回给定集合中的第 n 个值(要获取未知长度集合的最后一项,可以使用 -1)。

函数

apoc.agg.percentiles
返回给定集合中数值范围内的给定百分位数。

函数

apoc.agg.product
返回集合中所有非空INTEGERFLOAT值的乘积。

函数

apoc.agg.slice
返回给定集合中非空值的子集(集合被认为是从零开始索引的)。要指定从开始到集合结束的范围,长度应设置为 -1。

函数

apoc.agg.statistics
返回给定集合中INTEGERFLOAT值的以下统计信息:百分位数、最小值、非零最小值、最大值、总计、平均值、标准差。

函数

apoc.algo

限定名称 类型

apoc.algo.aStar
运行 A* 搜索算法以查找两个NODE值之间的最优路径,使用给定的RELATIONSHIP属性名称作为成本函数。

过程

apoc.algo.aStarConfig
运行 A* 搜索算法以查找两个NODE值之间的最优路径,使用给定的RELATIONSHIP属性名称作为成本函数。此过程在配置中查找权重、纬度和经度属性。

过程

apoc.algo.allSimplePaths
运行搜索算法以查找给定RELATIONSHIP值之间所有简单路径,直到由maxNodes描述的最大深度。返回的路径将不包含循环。

过程

apoc.algo.cover
返回连接给定NODE值集的所有RELATIONSHIP值。

过程

apoc.algo.dijkstra
使用给定的RELATIONSHIP属性作为成本函数运行 Dijkstra 算法。

过程

apoc.any

限定名称 类型

apoc.any.properties
返回给定对象的全部属性。对象可以是虚拟NODE、真实NODE、虚拟RELATIONSHIP、真实RELATIONSHIPMAP

函数

apoc.any.property
返回对象中给定键的属性。对象可以是虚拟NODE、真实NODE、虚拟RELATIONSHIP、真实RELATIONSHIPMAP

函数

apoc.atomic

限定名称 类型

apoc.atomic.add
将给定属性设置为自身与给定INTEGERFLOAT值的总和。然后,该过程将属性设置为返回的总和。

过程

apoc.atomic.concat
将给定属性设置为自身与STRING值的连接。然后,该过程将属性设置为返回的STRING

过程

apoc.atomic.insert
在属性的LIST<ANY>值的指定位置插入一个值。然后,该过程将结果设置回属性。

过程

apoc.atomic.remove
从属性的LIST<ANY>值的指定位置移除元素。然后,该过程将属性设置为结果LIST<ANY>值。

过程

apoc.atomic.subtract
将值的属性设置为自身减去给定的INTEGERFLOAT值。然后,该过程将属性设置为返回的和。

过程

apoc.atomic.update
使用 Cypher 操作更新属性的值。

过程

apoc.bitwise

限定名称 类型

apoc.bitwise.op
返回按位运算的结果

函数

apoc.coll

限定名称 类型

apoc.coll.avg
返回LIST<INTEGER | FLOAT>中数字的平均值。

函数

apoc.coll.combinations
返回LIST<ANY>元素在选择大小minSelectmaxSelect(默认值:minSelect)之间的所有组合的集合。

函数

apoc.coll.contains
返回给定值是否在给定集合中存在(使用HashSet)。

函数

apoc.coll.containsAll
返回给定值是否全部存在于给定集合中(使用HashSet)。

函数

apoc.coll.containsAllSorted
返回第二个LIST<ANY>中所有给定值是否都存在于已排序的集合中(使用二分查找)。

函数

apoc.coll.containsDuplicates
如果集合包含重复元素,则返回true。

函数

apoc.coll.containsSorted
返回给定值是否在已排序的集合中存在(使用二分查找)。

函数

apoc.coll.different
如果给定LIST<ANY>中的所有值都是唯一的,则返回true。

函数

apoc.coll.disjunction
返回两个LIST<ANY>值的析取集。

函数

apoc.coll.dropDuplicateNeighbors
删除LIST<ANY>中连续的重复对象。

函数

apoc.coll.duplicates
返回集合中重复项的LIST<ANY>

函数

apoc.coll.duplicatesWithCount
返回集合中重复项及其计数的LIST<ANY>,按itemcount键。

函数

apoc.coll.elements
LIST<ANY>分解为指示其特定类型的标识符。

过程

apoc.coll.fill
返回具有给定项目计数的LIST<ANY>

函数

apoc.coll.flatten
展平给定的LIST<ANY>(要展平嵌套的LIST<ANY>值,请将recursive设置为true)。

函数

apoc.coll.frequencies
返回集合中项目频率的LIST<ANY>,按itemcount键。

函数

apoc.coll.frequenciesAsMap
返回集合中项目频率的MAP,按itemcount键。

函数

apoc.coll.indexOf
返回LIST<ANY>中指定值的第一次出现的索引。

函数

apoc.coll.insert
将值插入LIST<ANY>中的指定索引。

函数

apoc.coll.insertAll
将所有值插入LIST<ANY>,从指定的索引开始。

函数

apoc.coll.intersection
返回两个LIST<ANY>值的唯一交集。

函数

apoc.coll.isEqualCollection
如果两个集合包含相同元素且基数相同(使用HashMap),则返回true(无论顺序如何)。

函数

apoc.coll.max
返回给定LIST<ANY>中所有值的最大值。

函数

apoc.coll.min
返回给定LIST<ANY>中所有值的最小值。

函数

apoc.coll.occurrences
返回集合中给定项的计数。

函数

apoc.coll.pairs
返回LIST<ANY>中相邻元素的LIST<ANY>([1,2],[2,3],[3,null])。

函数

apoc.coll.pairsMin
返回LIST<ANY>中相邻元素的LIST<ANY>值([1,2],[2,3]),跳过最后一个元素。

函数

apoc.coll.partition
将原始LIST<ANY>划分为给定批大小的新LIST<ANY>。最终的LIST<ANY>可能小于给定的批大小。

函数

apoc.coll.partition
将原始LIST<ANY>划分为给定批大小的新LIST<ANY>。最终的LIST<ANY>可能小于给定的批大小。

过程

apoc.coll.randomItem
LIST<ANY>中返回一个随机项,或者在LIST<NOTHING>LIST<NULL>上返回null。

函数

apoc.coll.randomItems
从原始LIST<ANY>中返回itemCount个随机项的LIST<ANY>(可以选择允许在原始LIST<ANY>中选择元素多次)。

函数

apoc.coll.remove
LIST<ANY>中删除一定范围的值,从位置索引开始,删除给定长度的值。

函数

apoc.coll.removeAll
返回第一个LIST<ANY>,其中删除了在第二个LIST<ANY>中也存在的元素。

函数

apoc.coll.runningTotal
返回累积的LIST<INTEGER | FLOAT>

函数

apoc.coll.set
将给定索引处的元素设置为新值。

函数

apoc.coll.shuffle
返回已洗牌的LIST<ANY>

函数

apoc.coll.sort
将给定的LIST<ANY>排序为升序。

函数

apoc.coll.sortMaps
根据prop指示的MAP属性,将给定的LIST<MAP<STRING, ANY>>排序为降序。

函数

apoc.coll.sortMulti
根据给定的字段对给定的LIST<MAP<STRING, ANY>>进行排序。要指示应根据升序值对字段进行排序,请在其前面加上插入符号 (^)。还可以为LIST<MAP<STRING, ANY>>添加限制并跳过值。

函数

apoc.coll.sortNodes
根据节点的属性将给定的LIST<NODE>排序为降序。

函数

apoc.coll.sortText
将给定的LIST<STRING>排序为升序。

函数

apoc.coll.split
根据给定值拆分集合。该值本身不会成为结果LIST<ANY>值的一部分。

过程

apoc.coll.subtract
返回第一个LIST<ANY>作为集合,其中删除了第二个LIST<ANY>的所有元素。

函数

apoc.coll.sum
返回LIST<INTEGER | FLOAT>中所有INTEGER | FLOAT的总和。

函数

apoc.coll.sumLongs
返回LIST<INTEGER | FLOAT>中所有INTEGER | FLOAT的总和。

函数

apoc.coll.toSet
从给定的LIST<ANY>返回唯一的LIST<ANY>

函数

apoc.coll.union
返回两个给定LIST<ANY>值的唯一并集。

函数

apoc.coll.unionAll
返回两个给定LIST<ANY>值的完整并集(包括重复项)。

函数

apoc.coll.zip
返回两个给定LIST<ANY>值作为LIST<LIST<ANY>>压缩在一起。

函数

apoc.coll.zipToRows
返回两个LIST<ANY>值压缩在一起,每对压缩值一行。

过程

apoc.convert

限定名称 类型

apoc.convert.fromJsonList
将给定的JSON列表转换为Cypher LIST<STRING>

函数

apoc.convert.fromJsonMap
将给定的JSON映射转换为Cypher MAP

函数

apoc.convert.getJsonProperty
将给定NODE属性中序列化JSON对象转换为等效的Cypher结构(例如MAPLIST<ANY>)。

函数

apoc.convert.getJsonPropertyMap
将给定NODE属性中序列化JSON对象转换为Cypher MAP

函数

apoc.convert.setJsonProperty
序列化给定的JSON对象,并将其设置为给定NODE上的属性。

过程

apoc.convert.toJson
序列化给定的JSON值。

函数

apoc.convert.toList
将给定值转换为LIST<ANY>

函数

apoc.convert.toMap
将给定值转换为MAP

函数

apoc.convert.toNode
将给定值转换为NODE

函数

apoc.convert.toNodeList
将给定值转换为LIST<NODE>

函数

apoc.convert.toRelationship
将给定值转换为RELATIONSHIP

函数

apoc.convert.toRelationshipList
将给定值转换为LIST<RELATIONSHIP>

函数

apoc.convert.toSet
将给定值转换为在Cypher中表示为LIST<ANY>的集合。

函数

apoc.convert.toSortedJsonMap
将给定NODE属性中序列化JSON对象转换为Cypher MAP

函数

apoc.convert.toTree
返回MAP值的流,表示给定的PATH值作为至少有一个根的树。

过程

apoc.create

限定名称 类型

apoc.create.addLabels
将给定的标签添加到给定的NODE值。

过程

apoc.create.node
使用给定的动态标签创建NODE

过程

apoc.create.nodes
使用给定的动态标签创建NODE值。

过程

apoc.create.relationship
使用给定的动态关系类型创建RELATIONSHIP

过程

apoc.create.removeLabels
从给定的NODE值中删除给定的标签。

过程

apoc.create.removeProperties
从给定的NODE值中删除给定的属性。

过程

apoc.create.removeRelProperties
从给定的RELATIONSHIP值中删除给定的属性。

过程

apoc.create.setLabels
将给定的标签设置为给定的NODE值。不匹配的标签将从节点中删除。

过程

apoc.create.setProperties
将给定的属性设置为给定的NODE值。

过程

apoc.create.setProperty
将给定的属性设置为给定的NODE值。

过程

apoc.create.setRelProperties
设置给定的RELATIONSHIP值上的属性。

过程

apoc.create.setRelProperty
设置给定的RELATIONSHIP值上的属性。

过程

apoc.create.uuid
返回一个UUID。

函数 已弃用

apoc.create.uuids
返回一个UUID流。

过程 已弃用

apoc.create.vNode
返回一个虚拟NODE

过程

apoc.create.vNode
返回一个虚拟NODE

函数

apoc.create.vNodes
返回虚拟NODE值。

过程

apoc.create.vRelationship
返回一个虚拟RELATIONSHIP

过程

apoc.create.vRelationship
返回一个虚拟RELATIONSHIP

函数

apoc.create.virtual.fromNode
从给定的现有NODE返回一个虚拟NODE。虚拟NODE仅包含请求的属性。

函数

apoc.cypher

限定名称 类型

apoc.cypher.doIt
使用给定的参数运行动态构建的语句。此过程允许读取和写入语句。

过程

apoc.cypher.run
使用给定的参数运行动态构建的只读语句。

过程

apoc.cypher.runFirstColumnMany
使用给定的参数运行给定的语句,并将第一列收集到LIST<ANY>中并返回。

函数

apoc.cypher.runFirstColumnSingle
使用给定的参数运行给定的语句,并返回第一列的第一个元素。

函数

apoc.cypher.runMany
运行每个用分号分隔的语句,并返回语句结果的摘要。

过程

apoc.cypher.runTimeboxed
如果Cypher语句在设置的超时时间(毫秒)之前未完成,则终止该语句。

过程

apoc.data

限定名称 类型

apoc.data.url
将URL转换为MAP

函数

apoc.date

限定名称 类型

apoc.date.add
将指定时间单位添加到给定的时间戳。

函数

apoc.date.convert
将给定的时间戳从一个时间单位转换为另一个时间单位的时间戳。

函数

apoc.date.convertFormat
将一种日期格式的STRING转换为另一种日期格式的STRING

函数

apoc.date.currentTimestamp
以毫秒为单位返回当前Unix纪元时间戳。

函数

apoc.date.field
返回给定日期时间中一个字段的值。

函数

apoc.date.fields
将给定的日期拆分为字段,返回包含每个字段值的MAP

函数

apoc.date.format
返回时间值的STRING表示形式。可以更改时间单位(默认值:毫秒)、日期格式(默认值:ISO)和时区(默认值:当前时区)。

函数

apoc.date.fromISO8601
将给定的日期STRING(ISO8601)转换为以毫秒为单位表示时间值的INTEGER

函数

apoc.date.parse
根据指定的格式将给定的日期STRING解析为指定的时间单位。

函数

apoc.date.systemTimezone
返回系统时区的显示名称(例如Europe/London)。

函数

apoc.date.toISO8601
以ISO8601格式返回指定时间值的STRING表示形式。

函数

apoc.date.toYears
将给定的时间戳或给定的日期转换为表示年份的FLOAT

函数

apoc.diff

限定名称 类型

apoc.diff.nodes
返回一个MAP,详细说明两个给定NODE值之间的差异。

函数

apoc.do

限定名称 类型

apoc.do.case
对于给定的LIST<ANY>中的每一对条件查询,此过程将运行第一个条件求值为真的查询。如果没有任何条件为真,则改为运行ELSE查询。

过程

apoc.do.when
如果条件求值为真,则运行给定的读/写ifQuery,否则运行elseQuery

过程

apoc.example

限定名称 类型

apoc.example.movies
使用Neo4j电影数据集为数据库播种数据。

过程

apoc.export

限定名称 类型

apoc.export.csv.all
将完整数据库导出到提供的CSV文件。

过程

apoc.export.csv.data
将给定的NODERELATIONSHIP值导出到提供的CSV文件。

过程

apoc.export.csv.graph
将给定的图导出到提供的CSV文件。

过程

apoc.export.csv.query
将运行给定Cypher查询的结果导出到提供的CSV文件。

过程

apoc.export.cypher.all
将完整数据库(包括索引)作为Cypher语句导出到提供的文件(默认值:Cypher Shell)。

过程

apoc.export.cypher.data
将给定的NODERELATIONSHIP值(包括索引)作为Cypher语句导出到提供的文件(默认值:Cypher Shell)。

过程

apoc.export.cypher.graph
将给定的图(包括索引)作为Cypher语句导出到提供的文件(默认值:Cypher Shell)。

过程

apoc.export.cypher.query
将给定Cypher查询中的NODERELATIONSHIP值(包括索引)作为Cypher语句导出到提供的文件(默认值:Cypher Shell)。

过程

apoc.export.cypher.schema
将所有模式索引和约束导出为Cypher语句。

过程

apoc.export.graphml.all
将完整数据库导出到提供的GraphML文件。

过程

apoc.export.graphml.data
将给定的NODERELATIONSHIP值导出到提供的GraphML文件。

过程

apoc.export.graphml.graph
将给定的图导出到提供的GraphML文件。

过程

apoc.export.graphml.query
将Cypher语句中给定的NODERELATIONSHIP值导出到提供的GraphML文件。

过程

apoc.export.json.all
将完整数据库导出到提供的JSON文件。

过程

apoc.export.json.data
将给定的NODERELATIONSHIP值导出到提供的JSON文件。

过程

apoc.export.json.graph
将给定的图导出到提供的JSON文件。

过程

apoc.export.json.query
将Cypher语句的结果导出到提供的JSON文件。

过程

apoc.graph

限定名称 类型

apoc.graph.from
通过从给定数据中提取所有NODERELATIONSHIP值来生成虚拟子图。

过程

apoc.graph.fromCypher
通过从给定Cypher语句返回的数据中提取所有NODERELATIONSHIP值来生成虚拟子图。

过程

apoc.graph.fromDB
通过从给定数据库返回的数据中提取所有NODERELATIONSHIP值来生成虚拟子图。

过程

apoc.graph.fromData
通过从给定数据中提取所有NODERELATIONSHIP值来生成虚拟子图。

过程

apoc.graph.fromDocument
通过从给定JSON文件返回的数据中提取所有NODERELATIONSHIP值来生成虚拟子图。

过程

apoc.graph.fromPath
通过从给定PATH返回的数据中提取所有NODERELATIONSHIP值来生成虚拟子图。

过程

apoc.graph.fromPaths
通过从给定PATH值返回的数据中提取所有NODERELATIONSHIP值来生成虚拟子图。

过程

apoc.graph.validateDocument
验证JSON文件并返回验证结果。

过程

apoc.hashing

限定名称 类型

apoc.hashing.fingerprint
计算NODERELATIONSHIP的MD5校验和(相同的实体共享相同的校验和)。不适用于加密用例。

函数

apoc.hashing.fingerprintGraph
计算整个图的MD5校验和。此函数使用内存中的数据结构。不适用于加密用例。

函数

apoc.hashing.fingerprinting
计算NODERELATIONSHIP的MD5校验和(相同的实体共享相同的校验和)。与apoc.hashing.fingerprint()不同,此函数支持许多配置参数。不适用于加密用例。

函数

apoc.import

限定名称 类型

apoc.import.csv
从提供的 CSV 文件中,导入具有给定标签和类型的NODERELATIONSHIP值。

过程

apoc.import.graphml
从提供的 GraphML 文件导入图。

过程

apoc.json

限定名称 类型

apoc.json.path
返回给定的 JSON 路径。

函数

apoc.label

限定名称 类型

apoc.label.exists
根据给定标签是否存在返回 true 或 false。

函数

apoc.load

限定名称 类型

apoc.load.json
如果给定的 JSON 文件是LIST<ANY>,则将 JSON 文件导入为值的流。如果给定的 JSON 文件是MAP,则此过程导入单个值。

过程

apoc.load.jsonArray
从 JSON URL(例如 web-API)加载数组,然后将给定的 JSON 文件导入为值的流。

过程

apoc.load.xml
从 XML URL(例如 web-API)加载单个嵌套的MAP

过程

apoc.lock

限定名称 类型

apoc.lock.all
获取给定NODERELATIONSHIP值的写锁。

过程

apoc.lock.nodes
获取给定NODE值的写锁。

过程

apoc.lock.read.nodes
获取给定NODE值的读锁。

过程

apoc.lock.read.rels
获取给定RELATIONSHIP值的读锁。

过程

apoc.lock.rels
获取给定RELATIONSHIP值的写锁。

过程

apoc.map

限定名称 类型

apoc.map.clean
过滤给定LIST<ANY>值中包含的键和值。

函数

apoc.map.flatten
展平给定MAP中的嵌套项。此函数是apoc.map.unflatten函数的反函数。

函数

apoc.map.fromLists
根据给定LIST<ANY>值中的键和值创建MAP

函数

apoc.map.fromNodes
返回给定标签的节点的给定 prop 的MAP

函数

apoc.map.fromPairs
根据给定的键值对的LIST<LIST<ANY>>创建MAP

函数

apoc.map.fromValues
根据给定LIST<ANY>中交替的键和值创建MAP

函数

apoc.map.get
返回给定键的值。如果给定的键不存在或缺少默认值,则此函数将抛出异常。

函数

apoc.map.groupBy
创建以给定属性为键的LIST<ANY>MAP,并带有单个值。

函数

apoc.map.groupByMulti
创建以给定属性为键的LIST<ANY>值的MAP,并带有LIST<ANY>值。

函数

apoc.map.merge
将两个给定的MAP值合并为一个MAP

函数

apoc.map.mergeList
将给定LIST<MAP<STRING, ANY>>中的所有MAP值合并为一个MAP

函数

apoc.map.mget
返回给定键的LIST<ANY>。如果其中一个键不存在或缺少默认值,则此函数将抛出异常。

函数

apoc.map.removeKey
MAP中删除给定的键(如果 recursive 为 true,则递归删除)。

函数

apoc.map.removeKeys
MAP中删除给定的键(如果 recursive 为 true,则递归删除)。

函数

apoc.map.setEntry
MAP中添加或更新给定的条目。

函数

apoc.map.setKey
MAP中添加或更新给定的条目。

函数

apoc.map.setLists
LIST<ANY>格式(例如 [key1, key2],[value1, value2])在MAP中添加或更新给定的键/值对。

函数

apoc.map.setPairs
MAP中添加或更新给定的键/值对(例如 [key1,value1],[key2,value2])。

函数

apoc.map.setValues
MAP中添加或更新交替的键/值对(例如 [key1,value1,key2,value2])。

函数

apoc.map.sortedProperties
返回键/值对的LIST<ANY>。这些对按键的字母顺序排序,可以选择区分大小写。

函数

apoc.map.submap
返回给定键的子映射。如果其中一个键不存在或缺少默认值,则此函数将抛出异常。

函数

apoc.map.unflatten
将给定MAP中的项展平为嵌套项。此函数是apoc.map.flatten函数的反函数。

函数

apoc.map.updateTree
在嵌套树的每个级别上添加数据MAP,其中键值对匹配。

函数

apoc.map.values
返回由给定键指示的LIST<ANY>(如果缺少给定键,则返回 null 值)。

函数

apoc.math

限定名称 类型

apoc.math.maxByte
返回字节的最大值。

函数

apoc.math.maxDouble
返回 double 类型最大正有限值。

函数

apoc.math.maxInt
返回整数的最大值。

函数

apoc.math.maxLong
返回长整型的最大值。

函数

apoc.math.minByte
返回字节的最小值。

函数

apoc.math.minDouble
返回 double 类型最小的正非零值。

函数

apoc.math.minInt
返回整数的最小值。

函数

apoc.math.minLong
返回长整型的最小值。

函数

apoc.math.regr
返回给定标签中 propertyY 和 propertyX 值的决定系数 (R 平方)。

过程

apoc.merge

限定名称 类型

apoc.merge.node
使用给定的动态标签合并给定的NODE值。

过程

apoc.merge.node.eager
使用给定的动态标签急切地合并给定的NODE值。

过程

apoc.merge.relationship
使用给定的动态类型/属性合并给定的RELATIONSHIP值。

过程

apoc.merge.relationship.eager
使用给定的动态类型/属性急切地合并给定的RELATIONSHIP值。

过程

apoc.meta

限定名称 类型

apoc.meta.cypher.isType
如果给定值与给定类型匹配,则返回 true。

函数

apoc.meta.cypher.type
返回给定值的类型名称。

函数

apoc.meta.cypher.types
返回包含给定值类型名称的MAP

函数

apoc.meta.data
检查整个图并返回元数据的表格。

过程

apoc.meta.graph
检查整个图并返回元图。

过程

apoc.meta.graphSample
检查整个图并返回元图。与apoc.meta.graph不同,此过程不会过滤掉不存在的路径。

过程

apoc.meta.nodeTypeProperties
检查整个图并返回包含其中NODE值信息的元数据表。

过程

apoc.meta.relTypeProperties
检查整个图并返回包含其中RELATIONSHIP值信息的元数据表。

过程

apoc.meta.schema
检查给定的子图并返回元数据作为MAP

过程

apoc.meta.stats
返回存储在事务数据库统计信息中的元数据。

过程

apoc.meta.subGraph
检查给定的子图并返回元图。

过程

apoc.neighbors

限定名称 类型

apoc.neighbors.athop
返回由给定RELATIONSHIP类型在指定距离处连接的所有NODE值。

过程

apoc.neighbors.athop.count
返回由给定RELATIONSHIP类型在指定距离处连接的所有NODE值的计数。

过程

apoc.neighbors.byhop
返回由给定RELATIONSHIP类型在指定距离内连接的所有NODE值。返回LIST<NODE>值,其中每个PATHNODE值表示LIST<NODE>值的一行。

过程

apoc.neighbors.byhop.count
返回由给定RELATIONSHIP类型在指定距离内连接的所有NODE值的计数。

过程

apoc.neighbors.tohop
返回由给定RELATIONSHIP类型在指定距离内连接的所有NODE值。每个NODE值都单独返回以供每一行使用。

过程

apoc.neighbors.tohop.count
返回模式中给定RELATIONSHIP值在指定距离内的所有NODE值的计数。

过程

apoc.node

限定名称 类型

apoc.node.degree
返回给定NODE的总度数。

函数

apoc.node.degree.in
返回连接到给定NODE的所有传入RELATIONSHIP值的总数。

函数

apoc.node.degree.out
返回来自给定NODE的所有传出RELATIONSHIP值的总数。

函数

apoc.node.id
返回给定虚拟NODE的 id。

函数

apoc.node.labels


返回给定虚拟NODE的标签。

函数

apoc.node.relationship.exists
根据给定NODE是否具有连接的RELATIONSHIP(或给定NODE是否具有给定类型和方向的连接RELATIONSHIP)返回一个BOOLEAN值。

函数

apoc.node.relationship.types
返回给定NODE的不同RELATIONSHIP类型的LIST<STRING>

函数

apoc.node.relationships.exist
根据给定NODE是否具有连接的RELATIONSHIP值(或给定NODE是否具有给定类型和方向的连接RELATIONSHIP值)返回一个BOOLEAN值。

函数

apoc.nodes

限定名称 类型

apoc.nodes.collapse
将给定LIST<NODE>中的NODE值合并在一起。然后将这些NODE值组合成一个NODE,并将所有先前NODE值的标签附加到它,以及指向它的所有RELATIONSHIP值。

过程

apoc.nodes.connected
当给定的NODE直接连接到另一个给定的NODE时返回true。此函数针对密集节点进行了优化。

函数

apoc.nodes.delete
删除所有具有给定ID的NODE值。

过程

apoc.nodes.get
返回所有具有给定ID的NODE值。

过程

apoc.nodes.group
允许根据给定的属性聚合NODE值。此过程返回虚拟NODE值。

过程

apoc.nodes.isDense
如果给定的NODE是密集节点,则返回true。

函数

apoc.nodes.link
创建给定NODE值通过给定RELATIONSHIP类型连接的链接列表。

过程

apoc.nodes.relationship.types
返回来自给定LIST<NODE>值的不同的RELATIONSHIP类型的LIST<STRING>

函数

apoc.nodes.relationships.exist
根据给定的NODE值是否具有给定的RELATIONSHIP值返回一个BOOLEAN值。

函数

apoc.nodes.rels
返回所有具有给定ID的RELATIONSHIP值。

过程

apoc.number

限定名称 类型

apoc.number.arabicToRoman
将给定的阿拉伯数字转换为罗马数字。

函数

apoc.number.exact.add
返回两个给定大数相加的结果(使用Java BigDecimal)。

函数

apoc.number.exact.div
返回一个给定大数除以另一个给定大数的结果(使用Java BigDecimal)。

函数

apoc.number.exact.mul
返回两个给定大数相乘的结果(使用Java BigDecimal)。

函数

apoc.number.exact.sub
返回一个给定大数减去另一个给定大数的结果(使用Java BigDecimal)。

函数

apoc.number.exact.toExact
返回给定数字的精确值(使用Java BigDecimal)。

函数

apoc.number.exact.toFloat
返回给定大数的FLOAT值(使用Java BigDecimal)。

函数

apoc.number.exact.toInteger
返回给定大数的INTEGER值(使用Java BigDecimal)。

函数

apoc.number.format
使用给定的模式和语言格式化给定的INTEGERFLOAT以生成STRING

函数

apoc.number.parseFloat
使用给定的模式和语言解析给定的STRING以生成FLOAT

函数

apoc.number.parseInt
使用给定的模式和语言解析给定的STRING以生成INTEGER

函数

apoc.number.romanToArabic
将给定的罗马数字转换为阿拉伯数字。

函数

apoc.path

限定名称 类型

apoc.path.combine
将两个给定的PATH值组合成一个PATH

函数

apoc.path.create
从给定的起始NODELIST<RELATIONSHIP>返回一个PATH

函数

apoc.path.elements
将给定的PATH转换为LIST<NODE | RELATIONSHIP>

函数

apoc.path.expand
返回从起始NODE扩展的PATH值,遵循给定的RELATIONSHIP类型,从最小深度到最大深度。

过程

apoc.path.expandConfig
返回从起始NODE扩展的PATH值,使用给定的RELATIONSHIP类型,从最小深度到最大深度。

过程

apoc.path.slice
返回一个给定长度的新PATH,该PATH取自给定PATH的给定偏移量。

函数

apoc.path.spanningTree
返回从起始NODE扩展的生成树PATH值,遵循给定的RELATIONSHIP类型到最大深度。

过程

apoc.path.subgraphAll
返回从起始NODE开始遵循给定RELATIONSHIP类型到最大深度的可达子图。

过程

apoc.path.subgraphNodes
返回从起始NODE开始遵循给定RELATIONSHIP类型到最大深度的可达子图中的NODE值。

过程

apoc.periodic

限定名称 类型

apoc.periodic.cancel
取消给定的后台作业。

过程

apoc.periodic.commit
在单独的分批事务中运行给定的语句。

过程

apoc.periodic.countdown
重复调用后台语句,直到它返回0。

过程

apoc.periodic.iterate
对第一个语句返回的每个项目运行第二个语句。此过程返回批处理数量和已处理行的总数。

过程

apoc.periodic.list
返回所有后台作业的LIST<ANY>

过程

apoc.periodic.repeat
运行重复调用的后台作业。要停止此过程,请使用apoc.periodic.cancel

过程

apoc.periodic.submit
创建一个后台作业,该作业运行给定的Cypher语句一次。

过程

apoc.refactor

限定名称 类型

apoc.refactor.categorize
从图中具有指定sourceKey作为其属性键之一的NODE值创建新的类别NODE值。然后将新的类别NODE值通过给定类型的RELATIONSHIP连接到原始NODE值。

过程

apoc.refactor.cloneNodes
克隆给定的NODE值及其标签和属性。可以使用skipProperties跳过任何NODE属性(注意:这仅跳过NODE值上的属性,而不是其RELATIONSHIP值)。

过程

apoc.refactor.cloneSubgraph
克隆给定的NODE值及其标签和属性(可以选择跳过skipProperties LIST<STRING>中的任何属性,通过配置MAP),并克隆给定的RELATIONSHIP值。如果未提供RELATIONSHIP值,则将克隆给定NODE值之间所有现有的RELATIONSHIP值。

过程

apoc.refactor.cloneSubgraphFromPaths
克隆由给定的LIST<PATH>值定义的子图。可以使用skipProperties LIST<STRING>通过配置MAP跳过任何NODE属性。

过程

apoc.refactor.collapseNode
折叠给定的NODE并将其替换为给定类型的RELATIONSHIP

过程

apoc.refactor.extractNode
将给定的RELATIONSHIP值扩展为中间NODE值。中间NODE值通过给定的outTypeinType连接。

过程

apoc.refactor.from
将给定的RELATIONSHIP重定向到给定的起始NODE

过程

apoc.refactor.invert
反转给定RELATIONSHIP的方向。

过程

apoc.refactor.mergeNodes
将给定的LIST<NODE>合并到LIST<NODE>中的第一个NODE上。所有RELATIONSHIP值也合并到该NODE上。

过程

apoc.refactor.mergeRelationships
将给定的LIST<RELATIONSHIP>合并到LIST<RELATIONSHIP>中的第一个RELATIONSHIP上。

过程

apoc.refactor.normalizeAsBoolean
将给定的属性重构为BOOLEAN

过程

apoc.refactor.rename.label
将所有NODE值的给定标签从oldLabel重命名为newLabel。如果提供了LIST<NODE>,则仅对该LIST<NODE>内的NODE值应用重命名。

过程

apoc.refactor.rename.nodeProperty
将所有NODE值的给定属性从oldName重命名为newName。如果提供了LIST<NODE>,则仅对该LIST<NODE>内的NODE值应用重命名。

过程

apoc.refactor.rename.type
将所有类型为oldTypeRELATIONSHIP值重命名为newType。如果提供了LIST<RELATIONSHIP>,则仅对该LIST<RELATIONSHIP>内的RELATIONSHIP值应用重命名。

过程

apoc.refactor.rename.typeProperty
将所有RELATIONSHIP值的给定属性从oldName重命名为newName。如果提供了LIST<RELATIONSHIP>,则仅对该LIST<RELATIONSHIP>内的RELATIONSHIP值应用重命名。

过程

apoc.refactor.setType
更改给定RELATIONSHIP的类型。

过程

apoc.refactor.to
将给定的RELATIONSHIP重定向到给定的结束NODE

过程

apoc.rel

限定名称 类型

apoc.rel.id
返回给定虚拟RELATIONSHIP的ID。

函数

apoc.rel.type
返回给定虚拟RELATIONSHIP的类型。

函数

apoc.schema

限定名称 类型

apoc.schema.assert
dropExistingtrue时(默认值为true),删除所有其他现有的索引和约束。在操作结束时断言给定的索引和唯一约束存在。

过程

apoc.schema.node.constraintExists
根据给定NODE标签的给定属性名称是否存在约束返回一个BOOLEAN值。

函数

apoc.schema.node.indexExists
根据给定的NODE标签和属性名称,返回一个BOOLEAN值,指示是否存在索引。

函数

apoc.schema.nodes
返回数据库中所有NODE标签的索引和约束信息。可以在配置参数中定义要包含或排除的一组标签。

过程

apoc.schema.properties.distinct
返回给定键的所有不同的NODE属性值。

过程

apoc.schema.properties.distinctCount
返回给定键的所有不同的属性值及其计数。

过程

apoc.schema.relationship.constraintExists
根据给定的RELATIONSHIP类型和属性名称,返回一个BOOLEAN值,指示是否存在约束。

函数

apoc.schema.relationships
返回数据库中所有关系类型的索引和约束信息。可以在配置参数中定义要包含或排除的一组关系类型。

过程

apoc.scoring

限定名称 类型

apoc.scoring.existence
如果为真,则返回给定的分数;如果为假,则返回0。

函数

apoc.scoring.pareto
对给定的INTEGER值应用帕累托评分函数。

函数

限定名称 类型

apoc.search.multiSearchReduced
在对多个索引进行并行搜索后,返回找到的NODE值的简化表示形式。简化的NODE值表示形式包括:节点ID、节点标签和搜索属性。

过程

apoc.search.node
在对多个索引进行并行搜索后,返回找到的所有不同的NODE值。

过程

apoc.search.nodeAll
在对多个索引进行并行搜索后,返回找到的所有NODE值。

过程

apoc.search.nodeAllReduced
在对多个索引进行并行搜索后,返回找到的NODE值的简化表示形式。简化的NODE值表示形式包括:节点ID、节点标签和搜索属性。

过程

apoc.search.nodeReduced
在对多个索引进行并行搜索后,返回找到的不同NODE值的简化表示形式。简化的NODE值表示形式包括:节点ID、节点标签和搜索属性。

过程

apoc.spatial

限定名称 类型

apoc.spatial.geocode
使用地理编码服务(默认:OpenStreetMap)返回给定地址的地理位置(纬度、经度和描述)。

过程

apoc.spatial.geocodeOnce
使用地理编码服务(默认:OpenStreetMap)返回给定地址的地理位置(纬度、经度和描述)。此过程最多返回一个结果。

过程

apoc.spatial.reverseGeocode
使用地理编码服务(默认:OpenStreetMap)从给定的地理位置(纬度、经度)返回文本地址。此过程最多返回一个结果。

过程

apoc.spatial.sortByDistance
根据NODE值中的纬度/经度值,根据其距离总和对给定的PATH值集合进行排序。

过程

apoc.stats

限定名称 类型

apoc.stats.degrees
返回由给定RELATIONSHIP类型连接的NODE值的度的百分位数分组。

过程

apoc.temporal

限定名称 类型

apoc.temporal.format
将给定的时间值格式化为给定的时间格式。

函数

apoc.temporal.formatDuration
将给定的持续时间格式化为给定的时间格式。

函数

apoc.temporal.toZonedTemporal
使用指定的格式将给定的日期STRING解析为给定的时区。

函数

apoc.text

限定名称 类型

apoc.text.base64Decode
解码给定的Base64编码的STRING

函数

apoc.text.base64Encode
使用Base64编码给定的STRING

函数

apoc.text.base64UrlDecode
解码给定的Base64编码的URL。

函数

apoc.text.base64UrlEncode
使用Base64编码给定的URL。

函数

apoc.text.byteCount
返回给定STRING的大小(以字节为单位)。

函数

apoc.text.bytes
将给定的STRING作为字节返回。

函数

apoc.text.camelCase
将给定的STRING转换为驼峰式命名法。

函数

apoc.text.capitalize
将给定STRING的第一个字母大写。

函数

apoc.text.capitalizeAll
将给定STRING中每个单词的第一个字母大写。

函数

apoc.text.charAt
返回给定索引处字符的INTEGER值。

函数

apoc.text.clean
去除给定STRING中除字母数字字符以外的所有字符,并将其转换为小写。

函数

apoc.text.code
INTEGER值转换为STRING

函数

apoc.text.compareCleaned
比较两个给定的STRING值,去除除字母数字字符以外的所有字符并转换为小写。

函数

apoc.text.decapitalize
将给定STRING的第一个字母从大写转换为小写。

函数

apoc.text.decapitalizeAll
将给定STRING中每个单词的第一个字母转换为小写。

函数

apoc.text.distance
使用莱文斯坦距离算法比较两个给定的STRING值。

函数

apoc.text.doubleMetaphone
返回给定STRING值中所有单词的双元音音标编码。

函数

apoc.text.format
使用给定的参数格式化给定的STRING

函数

apoc.text.fuzzyMatch
对两个给定的STRING值执行模糊匹配搜索。

函数

apoc.text.hammingDistance
使用汉明距离算法比较两个给定的STRING值。

函数

apoc.text.hexCharAt
返回给定STRING在给定索引处的十六进制值。

函数

apoc.text.hexValue
返回给定值的十六进制值。

函数

apoc.text.indexOf
返回查找STRING在给定STRING中的第一次出现位置,如果未找到则返回-1。

函数

apoc.text.indexesOf
返回查找STRING在给定STRING中的所有出现位置,如果未找到则返回空列表。

函数

apoc.text.jaroWinklerDistance
使用Jaro-Winkler距离算法比较两个给定的STRING值。

函数

apoc.text.join
使用给定的分隔符连接给定的STRING值。

函数

apoc.text.levenshteinDistance
使用莱文斯坦距离算法比较给定的STRING值。

函数

apoc.text.levenshteinSimilarity
根据莱文斯坦距离算法返回两个给定STRING值之间的相似度(0到1之间的值)。

函数

apoc.text.lpad
用给定的宽度在给定STRING的左侧填充空格。

函数

apoc.text.phonetic
返回STRING所有单词的US_ENGLISH语音音标编码。

函数

apoc.text.phoneticDelta
返回两个给定STRING值之间的US_ENGLISH语音音标字符差异。

过程

apoc.text.random
使用长度参数和可选的有效字符STRING生成给定长度的随机STRING。不适用于加密用例。

函数

apoc.text.regexGroups
返回给定文本中与给定正则表达式匹配的所有组。

函数

apoc.text.regreplace
查找并替换由给定正则表达式找到的所有匹配项,并使用给定的替换项。

函数

apoc.text.repeat
返回给定项乘以给定计数的结果。

函数

apoc.text.replace
查找并替换由给定正则表达式找到的所有匹配项,并使用给定的替换项。

函数

apoc.text.rpad
用给定的宽度在给定STRING的右侧填充空格。

函数

apoc.text.slug
将给定STRING中的空格替换为给定的分隔符。

函数

apoc.text.snakeCase
将给定的STRING转换为蛇形命名法。

函数

apoc.text.sorensenDiceSimilarity
使用Sørensen–Dice系数公式(以及提供的IETF语言标签)比较两个给定的STRING值。

函数

apoc.text.split
使用给定的正则表达式作为分隔符分割给定的STRING

函数

apoc.text.swapCase
交换给定STRING中的大小写。

函数

apoc.text.toCypher
将给定值转换为Cypher属性STRING

函数

apoc.text.toUpperCase
将给定的STRING转换为大写。

函数

apoc.text.upperCamelCase
将给定的STRING转换为大驼峰式命名法。

函数

apoc.text.urldecode
解码给定的URL编码的STRING

函数

apoc.text.urlencode
编码给定的URL STRING

函数

apoc.util

限定名称 类型

apoc.util.md5
返回给定LIST<ANY>中所有STRING值的连接的MD5校验和。MD5是一种弱散列算法,不适用于加密用例。

函数

apoc.util.sha1
返回给定LIST<ANY>中所有STRING值的连接的 SHA1 哈希值。SHA1 是一种弱哈希算法,不适用于加密用例。

函数

apoc.util.sha256
返回给定LIST<ANY>中所有STRING值的连接的 SHA256 哈希值。

函数

apoc.util.sha384
返回给定LIST<ANY>中所有STRING值的连接的 SHA384 哈希值。

函数

apoc.util.sha512
返回LIST<ANY>中所有STRING值的连接的 SHA512 哈希值。

函数

apoc.util.sleep
使当前正在运行的 Cypher 睡眠指定毫秒数(事务终止将被遵守)。

过程

apoc.util.validate
如果给定的条件为真,则抛出异常。

过程

apoc.util.validatePredicate
如果给定的条件为真,则抛出异常,否则返回 true(用于WHERE子句中)。

函数

apoc.warmup

限定名称 类型

apoc.warmup.run
将数据库中的所有NODERELATIONSHIP值加载到内存中。

过程 已弃用

apoc.xml

限定名称 类型

apoc.xml.parse
将给定的 XML STRING解析为MAP

函数