FIND PATH 语法

FIND PATH 语法用于获取最短路径及全路径

  1. FIND SHORTEST | ALL PATH FROM <vertex_id_list> TO <vertex_id_list>
  2. OVER <edge_type_list> [UPTO <N> STEPS]

SHORTEST 寻找最短路径关键词。

ALL 寻找全路径关键词。

<vertex_id_list>::=[vertex_id [, vertex_id]] 为节点列表,用逗号隔开。支持输入 $- 及变量 $var

<edge_type_list> 指定边的类型,多种边类型用 , 隔开,用 * 表示所有边类型。

<N> 为跳数,默认值 5。

注意事项

  • 当起点及终点是 ID 列表时,表示寻找从任意起点开始到终点的最短路径。
  • 全路径会有环。

示例

在 console 中,路径显示方式为 id <edge_name, ranking> id

  1. nebula> FIND SHORTEST PATH FROM 200 to 201 OVER *
  2. ============================
  3. | _path_ |
  4. ============================
  5. | 200 <like,0> 201
  6. ----------------------------
  1. nebula> FIND ALL PATH FROM 200 to 201 OVER *
  2. ====================================================================================================
  3. | _path_ |
  4. ====================================================================================================
  5. | 200 <like,0> 201
  6. ----------------------------------------------------------------------------------------------------
  7. | 200 <like,0> 201 <like,0> 200 <like,0> 201
  8. ----------------------------------------------------------------------------------------------------
  9. | 200 <like,0> 201 <like,0> 200 <like,0> 201 <like,0> 200 <like,0> 201
  10. ----------------------------------------------------------------------------------------------------