You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NebulaGraph中properties($^)与src(edge)的用法差异咨询

NebulaGraph中properties($^)与src(edge)的用法差异

问题场景

从VID为"2"的顶点出发,反向遍历follow边时,使用properties($$)和src(edge)查询得到的结果不同,执行语句及结果如下:

执行语句1(使用properties($$))

(root@nebula) [basketballplayer]> go from "2" over follow reversely yield properties($$)
+-------------------+
| properties($$)    |
+-------------------+
| {name: "A"}       |
+-------------------+

执行语句2(使用src(edge))

(root@nebula) [basketballplayer]> go from "2" over follow reversely yield src(edge)
+------------+
| src(EDGE)  |
+------------+
| "1"        |
+------------+

核心用法差异

  • src(edge):返回当前边的原始起始顶点VID,不受遍历方向影响。反向遍历场景下,这条边原本的起始顶点是"1",因此直接输出该顶点的ID字符串。
  • properties($^):返回遍历路径中锚点顶点(即查询的出发顶点)的属性集合。注意示例中使用的properties($$)是返回遍历到达的目标顶点属性,而$^、$$的指向会随遍历方向动态切换:
    • 正向遍历:$^指向出发顶点,$$指向到达顶点
    • 反向遍历:$^指向原边的到达顶点(即本次查询的出发顶点"2"),$$指向原边的起始顶点(即"1"),所以properties($$)返回的是"1"顶点的属性。

额外说明:src(edge)和dst(edge)永远绑定边本身的原始起始、目标顶点,不会随遍历方向改变而变化;而$^、$$是动态指向遍历路径中的前后顶点,方向反转时指向也会反转。

内容的提问来源于stack exchange,提问作者黄凤仙

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 17:01:23