跳转至

NebulaGraph查询语言(nGQL)Graph

本文介绍NebulaGraph使用的查询语言nGQL(NebulaGraph Query Language)。

什么是nGQLGraph

nGQL是NebulaGraph使用的的声明式图查询语言,支持灵活高效的Graph,而且nGQL是为开发和运维人员设计的类SQL查询语言,易于学习。

nGQL是一个进行中的项目,会持续发布新特性和优化,因此可能会出现语法和实际操作不一致的问题,如果遇到此类问题,请提交Graph。

nGQL可以做什么Graph

  • 支持图遍历
  • 支持模式匹配
  • 支持聚合
  • 支持修改图
  • 支持访问控制
  • 支持聚合查询
  • 支持索引
  • 支持大部分openCypher 9图查询语法(不支持修改和控制语法)

示例数据 BasketballplayerGraph

您可以下载NebulaGraph示例数据Graph,使用选项-f执行脚本。

占位标识符和占位符值Graph

NebulaGraph查询语言nGQL参照以下标准设计:

  • ISO/IEC 10646
  • ISO/IEC 39075
  • ISO/IEC NP 39075 (Draft)
  • OpenCypher 9

在模板代码中,任何非关键字、字面值或标点符号的标记都是占位符标识符或占位符值。

nGQL的符号说明如下。

符号 含义
< > 语法元素的名称。
::= 定义元素的公式。
[ ] 可选元素。
{ } 显示指定元素。
| 所有可选的元素。
... 可以重复多次。

例如创建点或边的nGQL语法:

CREATE {TAG | EDGE} {<tag_name> | <edge_type>}(<property_name> <data_type>
[, <property_name> <data_type> ...]);

示例语句:

nebula> CREATE TAG player(name string, age int);

最后更新: April 15, 2021
Back to top