表格函数 table() 可以将多个数据列合并为一个表格列。
Arguments:
- 任意值 <any>,点、边取 UUID
- ...
Returns:
- 表格 <table>
当多个数据列非同源时,在 WITH 中使用该函数时会先将非同源列做笛卡尔乘积后再计算,在 RETURN 中使用该函数时会直接将各列截为等长后再计算。
将一列 timestamp 类型的属性值作为表格函数的输入时,表格中记录的是该列值在服务器时区的时间值,而非用户所在时区的时间值。
合并常量
示例:将 1、"abc"、"2023-01-05 0:0:0" 三个信息以表格的形式返回
return table(1, "abc", "2023-01-05 0:0:0")
分析:上述代码等效于 return [1, "abc", "2023-01-05 0:0:0"]
合并同源别名
示例:查找 10 个银行卡,返回卡号和过期日
find().nodes({@card}) as n
limit 10
return table(n._id, n.expire_date)
合并同源函数值
示例:分别统计银行卡 CA001、CA002、CA003 的邻居个数
uncollect ["CA001","CA002","CA003"] as n1
khop().src({_id == n1}).depth(1) as n2
group by n1
return table(n1, count(n2))
WITH 合并非同源别名
示例:
uncollect [1,2,3] as a1
uncollect [4,5] as a2
with table(a1, a2) as a3
return a3
RETURN 合并非同源别名
示例:
uncollect [1,2,3] as a1
uncollect [4,5] as a2
return table(a1, a2)