更新时间:2024-03-28 GMT+08:00

DSL查询

GES提供的一种graph DSL查询语言,可以利用DSL来完成对图的查询与计算,帮助您低成本设计并运行算法。注意:该功能仅支持2.3.14及以上版本的图。

具体操作步骤如下:

  1. 进入图引擎编辑器页面,详细操作请参见访问图引擎编辑器
  2. 在图数据查询区,单击下拉按钮,切换到DSL查询,输入查询语句,按“回车”键执行操作。
    图1 切换到DSL查询

多标签图不支持DSL查询功能。

DSL常用查询语句

常用的查询语句如下表所示:

  • 点查询

    Match<Vertex> v(['Vivian','Eric']);return v; 表示查询id为Vivian和Eric的点。

  • N跳查询

    Match<Vertex> v(['Vivian']);v.repeat(bothV()).times(2).emit();return v; 表示查询id为Vivian的both方向两跳内所有的邻居点。

  • 返回子图

    Match<Vertex> v(['Vivian','Eric']); return v.subgraph(); 表示返回点Vivian和Eric,以及Vivian和Eric之间的边集。

  • 其他语句

    Match<Vertex> v(); v.pick(1); return v; 表示随机匹配选择1个点返回。

    Match<Vertex> v(); v.pattern('match (n:user) return n'); return v; //使用cypher语句查询点集并返回

  1. 如果您输入了多个DSL查询命令,可以在输入框中通过上下方向键来查找历史命令。
  2. DSL查询支持联想历史记录的功能,根据您输入的语法关键字会自动显示您刚输入过的语法供您参考和选择,帮助您提高查询效率。
  3. 输入栏中的关键词,不同的类型会呈现出不同的颜色,具体颜色区分如下:
    • 保留字:灰色

      注意:保留字是编程语言中的一类语法结构。在特定的编程语言里,这些保留字具有较为特殊的意义,并且在语言的格式说明里被预先定义。

    • String类型:橙色
    • 键值对(非String类型,包括[键:值]):紫色
    • 分隔符(包含 [] {} , ; () . 等):红色
    • 变量:绿色
    图2 DSL关键字高亮