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等
相关推荐
遇见你的雩风17 分钟前
【MySQL】--- 视图
数据库·mysql
Thepatterraining31 分钟前
大厂架构师揭秘:MySQL缓冲池为什么不用mmap?LRU-K算法详解
数据库·mysql
LB211232 分钟前
Redis黑马点评 分布式锁
数据库·redis·分布式
无敌最俊朗@1 小时前
SQlite:电影院售票系统中的主键(单列,复合)约束应用
java·开发语言·数据库
全栈工程师修炼指南1 小时前
DBA | Oracle 数据备份迁移之数据泵 expdp/impdp 工具实战指南
数据库·oracle·dba
迷了璐的航1 小时前
mybatis解决查询中使用group by时出现sql_mode=only_full_group_by
数据库·sql·mybatis
金仓拾光集1 小时前
「安全升级 + 零代码平替」金仓数据库如何实现MongoDB社交动态发布系统的无缝迁移?
数据库·安全·mongodb·kingbase·kingbasees·数据库平替用金仓·金仓数据库
金仓拾光集1 小时前
告别“凭感觉”告警,金仓数据库替换MongoDB让运维更精准
运维·数据库·mongodb·kingbase·数据库平替用金仓·金仓数据库·kingbasees·
FinTech老王1 小时前
金仓替换MongoDB:金融交易数据一致性新解
数据库·mongodb·1024程序员节
g32308631 小时前
Milvus知识
数据库·milvus