图函数

graph.names()

详情

语法

graph.names()

描述

列出当前数据库中的图名称。

返回

LIST<STRING>

注意事项

graph.names() 仅在 组合数据库上受支持。

示例 1. graph.names()
设置
CREATE DATABASE dba;
CREATE DATABASE dbb;
CREATE DATABASE dbc;
CREATE COMPOSITE DATABASE composite;
CREATE ALIAS composite.first FOR DATABASE dba;
CREATE ALIAS composite.second FOR DATABASE dbb;
CREATE ALIAS composite.third FOR DATABASE dbc;
查询
RETURN graph.names() AS name

返回当前组合数据库上所有图的名称。

结果
名称

"composite.first"

"composite.second"

"composite.third"

行数:3

graph.propertiesByName()

详情

语法

graph.propertiesByName(graphName)

描述

返回与图关联的属性 MAP

参数

名称

类型

描述

graphName

STRING

将返回所有关联属性的图的名称。

返回

MAP

注意事项

graph.propertiesByName() 仅在 组合数据库上受支持。

返回的 MAP 中的属性是在将图添加为组合数据库组成部分的别名上设置的。

示例 2. graph.propertiesByName()
设置
CREATE DATABASE dba;
CREATE DATABASE dbb;
CREATE DATABASE dbc;
CREATE COMPOSITE DATABASE composite;
CREATE ALIAS composite.first FOR DATABASE dba
  PROPERTIES {number: 1, tags: ['A', 'B']};
CREATE ALIAS composite.second FOR DATABASE dbb
  PROPERTIES {number: 0, tags: ['A']};
CREATE ALIAS composite.third FOR DATABASE dbc
  PROPERTIES {number: 2, tags: ['B', 'C']};
查询
UNWIND graph.names() AS name
RETURN name, graph.propertiesByName(name) AS props

返回当前组合数据库上所有图的属性。

结果
名称 属性

"composite.first"

{number: 1, tags: ["A", "B"]}

"composite.second"

{number: 0, tags: ["A"]}

"composite.third"

{number: 2, tags: ["B", "C"]}

行数:3

查询
UNWIND graph.names() AS name
WITH name, graph.propertiesByName(name) AS props
WHERE "A" IN props.tags
CALL () {
  USE graph.byName(name)
  MATCH (n)
  RETURN n
}
RETURN n

返回具有包含 "A"tags 属性的图子集中的所有节点。

上述查询使用了空的变量作用域子句CALL () { …​ } (在 Neo4j 5.23 中引入)。如果您使用的是旧版 Neo4j,请改用 CALL { …​ }。有关更多信息,请参阅CALL 子查询 → 导入变量

graph.byName()

详情

语法

graph.byName(name)

描述

返回给定名称的图引用。

参数

名称

类型

描述

名称

STRING

要解析的图的名称。

返回

GRAPH

注意事项

graph.byName() 仅在USE 子句中,且在组合数据库上受支持。

示例 3. graph.byName()
查询
UNWIND graph.names() AS graphName
CALL () {
  USE graph.byName(graphName)
  MATCH (n)
  RETURN n
}
RETURN n

返回当前组合数据库上所有图中的所有节点。

上述查询使用了空的变量作用域子句CALL () { …​ } (在 Neo4j 5.23 中引入)。如果您使用的是旧版 Neo4j,请改用 CALL { …​ }。有关更多信息,请参阅CALL 子查询 → 导入变量

graph.byElementId()

详情

语法

graph.byElementId(elementId)

描述

返回具有给定元素 ID 的图引用。

参数

名称

类型

描述

elementId

STRING

节点或关系的元素 ID。

返回

GRAPH

注意事项

如果组成数据库不是 DBMS 中的标准数据库,将抛出错误。

graph.byElementId() 仅在USE 子句中受支持。

从 Neo4j 5.26 开始,graph.byElementId()标准数据库和组合数据库上均受支持。在早期版本中,它仅在组合数据库上受支持。

在标准数据库上,包含 graph.byElementId()USE 子句不能与其他 USE 子句组合使用,除非后续 USE 子句引用相同的元素 ID。

示例 4. graph.byElementId()

在此示例中,假设 DBMS 包含一个组合数据库组成部分,其中包含元素 ID 4:c0a65d96-4993-4b0c-b036-e7ebd9174905:0

查询
USE graph.byElementId("4:c0a65d96-4993-4b0c-b036-e7ebd9174905:0")
MATCH (n) RETURN n
© . All rights reserved.