变量¶
在 GQL 中,变量是一种用于表示特定数据类型的实例集合的标识符。变量可用于在过程中存储值,从而进行数据检索和操作等。
按模式匹配角色分类的变量¶
按声明类型分类的变量¶
- 原始值变量:用于存储和操作值。更多信息,请参见原始值变量。
- 聚合值变量:用于存储和聚合值。更多信息,请参见聚合值变量。
- 活动集变量:用于存储需要处理的点集合。更多信息,请参见活动集变量。
- 图变量:用于存储和操作子图。更多信息,请参见图变量。
- 表变量:用于存储和操作表格数据。更多信息,请参见表变量。
- 文件变量:用于定义基于文件的数据源和数据目的地。更多信息,请参见文件变量。
变量作用域¶
在 GQL 中,花括号 ({}) 用于在过程中创建块。块可以嵌套在一起,从而实现结构化的控制流和变量管理。
根据声明时所在的块,变量有两种作用域:
- 块级作用域
- 全局作用域
块级作用域¶
块级变量在嵌套块内声明,且只能在该块内访问。
Note
块级变量不能与外部块中已声明的变量重名。
仅原始值变量支持块级作用域。
全局作用域¶
全局变量必须在全局范围内声明,也即在过程体的最顶层。不能在任何嵌套块内声明。
以下变量支持全局作用域:
- 原始值变量
- 聚合值变量,包括全局聚合值变量和点绑定聚合值变量
- 活动集变量
- 图变量
- 表变量
- 文件变量
在声明后,点绑定聚合值变量只能在匹配计算语句的per_block子句中进行聚合操作,而其他全局变量可以在过程的任何部分访问。