Nebula Graph-05-NebulaGraph nGQL和SQL区别

前言

系列文章:
Nebula Graph-01-Nebula Graph简介和安装以及客户端连接
Nebula Graph-02-NebulaGraph高阶配置、用户管理、日志
Nebula Graph-03-NebulaGraph Studio-可视化web工具安装和使用
Nebula Graph-04-NebulaGraph nGQL的介绍和使用
Nebula Graph-05-NebulaGraph nGQL和SQL区别
Nebula Graph-06-NebulaGraph Java 使用 和SpringBoot集成Nebula Graph


刚刚我们介绍了nGQL的基本用法: Nebula Graph-04-NebulaGraph nGQL的介绍和使用

现在我们来比较一下nGQL 和我们关系型数据库SQL的区别

nGQL和SQL的概念

对比项 SQL nGQL
\
\
点类型 \ tag
边类型 \ edge type
点 ID 主键 vid
边 ID 复合主键 起点、终点、rank
点或边的属性
点或边

数据操作语言(DML)

  • DML(Data Manipulation Language,数据操作语言):用于数据的增删改。
  • DML操作对象是表里的数据(记录)
对比项 SQL nGQL
插入数据 INSERT IGNORE INTO <tbl_name> [(col_name [, col_name] ...)] {VALUES | VALUE} [(value_list) [, (value_list)] INSERT VERTEX <tag_name> (prop_name_list[, prop_name_list]) {VALUES | VALUE} vid: (prop_value_list[, prop_value_list]) ----------或------INSERT EDGE <edge_name> ( <prop_name_list> ) VALUES | VALUE <src_vid> -> <dst_vid>[@] : ( <prop_value_list> )
更新数据 UPDATE <tbl_name> SET field1=new-value1, field2=new-value2 [WHERE Clause] UPDATE VERTEX SET <update_columns> [WHEN ] UPDATE EDGE SET <update_columns> [WHEN <condition>]
删除数据 DELETE FROM <tbl_name> [WHERE Clause] DELETE EDGE <edge_type> -> [@] [, -> ...] DELETE VERTEX <vid_list>
拼接子查询 JOIN |

数据定义语言 (DDL)

  • DDL(Data Definition Language,数据定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象。
  • DDL操作的对象是表
对比项 SQL nGQL
创建图空间(数据库) CREATE DATABASE <database_name> CREATE SPACE <space_name>
列出图空间(数据库) SHOW DATABASES SHOW SPACES
使用图空间(数据库) USE <database_name> USE <space_name>
删除图空间(数据库) DROP DATABASE <database_name> DROP SPACE <space_name>
修改图空间(数据库) ALTER DATABASE <database_name> alter_option \
创建 tags/edges \ CREATE TAG
创建表 CREATE TABLE <tbl_name> (create_definition,...) \
列出表列名 SHOW COLUMNS FROM <tbl_name> \
列出 tags/edges \ SHOW TAGS
修改 tags/edge \ ALTER TAG
修改表 ALTER TABLE <tbl_name> \

数据控制语言(DCL)

  • DCL(Data Control Language,数据控制语言):用于定义数据库用户的权限。
  • DCL的操作对象是用户
对比项 SQL nGQL
创建用户 CREATE USER CREATE USER
删除用户 DROP USER DROP USER
更改密码 SET PASSWORD CHANGE PASSWORD
授予权限 GRANT <priv_type> ON [object_type] TO GRANT ROLE <role_type> ON TO
删除权限 REVOKE <priv_type> ON [object_type] TO REVOKE ROLE <role_type> ON FROM

数据查询语言(DQL)

  • DQL(Data Query Language,数据库查询语言):用于查询数据
  • DQL的操作对象是数据库
对比项 SQL nGQL
查询数据 SELECT GO, FETCH等
相关推荐
薛定谔的算法19 小时前
phoneGPT:构建专业领域的检索增强型智能问答系统
前端·数据库·后端
Databend20 小时前
Databend 亮相 RustChinaConf 2025,分享基于 Rust 构建商业化数仓平台的探索
数据库
得物技术21 小时前
破解gh-ost变更导致MySQL表膨胀之谜|得物技术
数据库·后端·mysql
Raymond运维1 天前
MariaDB源码编译安装(二)
运维·数据库·mariadb
沢田纲吉1 天前
🗄️ MySQL 表操作全面指南
数据库·后端·mysql
RestCloud2 天前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud2 天前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence2 天前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
DemonAvenger2 天前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
AAA修煤气灶刘哥3 天前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql