表类型¶
表类型描述由命名字段和数据行组成的表格数据,每个字段都有对应的值类型。例如,TABLE {id INT64, name STRING}表示一个表,其中id字段的类型为INT64,name字段的类型为STRING。
表类型不能作为点或边的属性类型。
查看表类型¶
使用typeof()函数可以查看表变量的类型:
'''
TABLE t TYPED TABLE {id INT64, name STRING} =
{id: 10001, name: 'Alice'},
{id: 10002, name: 'Bob'}
RETURN typeof(t) AS t_type
'''
返回:
+-------------------------------+
| t_type |
+-------------------------------+
| TABLE {id INT64, name STRING} |
+-------------------------------+
返回的类型包含每个字段的名称和值类型。
表类型和表变量¶
表类型描述表格数据的结构,表变量用于存储或引用表格数据:
TABLE t TYPED TABLE {id INT64, name STRING}
在上述声明中:
t是表变量。TABLE {id INT64, name STRING}是该变量的表类型。- 第一个
TABLE关键字用于引入表变量声明。
完整的声明语法参见表变量。
用作过程参数类型¶
用户自定义过程(UDP)可以通过声明为TABLE的参数接收表:
parameter_name TABLE
在上述语法中,TABLE表示该参数接受调用方传入的表变量。更多信息,请参见 CREATE PROCEDURE。
使用场景¶
表类型主要用于:
- 保存中间数据或结果的表变量。
- 接收表的 UDP 参数。
- 通过
IMPORT和EXPORT交换数据。
悦数图数据库开发版中的表变量¶
在悦数图数据库开发版中,表变量的字段名称和类型也可以根据初始值或查询结果推导。本地表变量可以使用FOR遍历。
限制¶
- 表类型不能作为点或边的属性类型。
- 写入表的值必须与对应的字段类型兼容。