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等
相关推荐
煎蛋学姐15 小时前
SSM网上旅游订票服务系统10r27(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·ssm 框架·网上旅游订票系统·旅游服务数字化
海南java第二人16 小时前
数据库范式详解:从冗余到规范的升华之旅
数据库·oracle·ffmpeg
hyx04121917 小时前
mysql第5次作业---hyx
数据库·mysql
Daniel大人17 小时前
关于sqlite
数据库·sqlite
nsjqj17 小时前
MySQL数据库:表的增删改查 [CRUD](进阶)【一】
数据库·mysql
她说..17 小时前
Redis实现未读消息计数
java·数据库·redis·缓存
xiayehuimou18 小时前
Redis核心技术与实战指南
数据库·redis·缓存
Yeats_Liao18 小时前
时序数据库系列(八):InfluxDB配合Grafana可视化
数据库·后端·grafana·时序数据库
就叫飞六吧18 小时前
MySQL不停机迁移完全指南
数据库·mysql
猎人everest19 小时前
Windows系统Redis(8.2.2)安装与配置完整教程
数据库·windows·redis