当前位置: 首页 > news >正文

nGQL入门

引言

nGQL(NebulaGraph Query Language)是用于操作 NebulaGraph 的查询语言。它的语法类似于 Cypher,但有自己独特的特性。以下是一些 nGQL 的基本语法和操作示例,以帮助你入门。

基本概念

  • 节点(Vertex):图中的点,具有唯一的ID和标签。
  • 边(Edge):连接两个节点的线,有类型和方向。
  • 属性(Property):节点和边可以有属性,用键值对表示。

基础语法

1.图空间

#1.创建图空间,vid_type选择FIXED_STRING(30)
CREATE SPACE test_space(partition_num=15, replica_factor=1, vid_type=FIXED_STRING(30));#vid_type选择INT64)
CREATE SPACE test_space(partition_num=15, replica_factor=1, vid_type=INT64);#2.查看所有图空间
show spaces#3.使用图空间
use test_space#4.删除图空间
drop space test_space

2.标签

#1.创建标签
create tag person(name string null, gender string null,age int null ,birthday date null)#2.查看所有标签
show tags#3.查看标签属性
describe tag person#4.删除标签
drop tag person#5.创建索引并重建索引
create tag index i_person_name_age on person(name(50),age)
rebuild tag index i_person_name_agecreate tag index i_person_name on person(name(50))
rebuild tag index i_person_name#6.查看索引
show tag indexes#7.查看索引属性
describe tag index i_person_name#8.删除索引
drop tag index i_person_name#9.插入数据
insert vertex person(name, gender, age, birthday) values "1":("zhangsan","男", 25,date("1999-08-01")), "2":("lisi","男",24,date("2000-09-03")), "3":("xiaopang","男",24,date("2000-08-02"))#10.查询所有数据
match (n:person) return n#查询单条数据
fetch prop on person "2" yield  person.name,person.gender,person.age,person.birthday#11.删除节点
delete vertex "1"#12.更新节点属性
update vertex "1" set person.age=30

3.边类型

#1.创建边类型
create edge like(likeness double null)#2.查看边类型
show edges#3.查看边属性
describe edge like#4.删除边类型
drop edge like#5.创建索引并重建索引
create edge index i_like_likeness on like(likeness)
rebuild edge index i_like_likeness#6.查看索引
show edge indexes#7.查看索引属性
describe edge index i_like_likeness#8.删除索引
drop edge index i_like_likeness#9.插入数据
insert edge like(likeness) values "1"->"2":(0.98), "2"->"3":(0.56)#10.查询所有数据
match (n:person)-[e:like]->(m:person) return n,e,m#查询单条数据
fetch prop on like "1"->"2" yield like.likeness#11.删除边
delete edge like "2"->"3"#12.更新边属性
update edge "1"->"2" of like set  like.likeness=0.88

4.复杂用法

#1.查询
match (n:person) where n.person.age>10 and n.person.name=="zhangsan"  return n 
match (a)-[e:like]->(b) where e.likeness > 0.80 return a,e,bmatch (n:person) where n.person.name in["zhangsan","lisi"] return n#2.使用聚合函数
match (n:person) return AVG(n.person.age)
match (n:person) return n.person.gender,COUNT(*)#3.排序
match (n:person) return n.person.name, n.person.age as age order by age ASCmatch (a)-[e:like]->(b) return a, e.likeness as l,b order by l DESC

http://www.lryc.cn/news/413469.html

相关文章:

  • [CP_AUTOSAR]_系统服务_DEM模块(二)功能规范介绍
  • Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
  • IPython的使用技巧2
  • win10打开程序闪退的解决方法,亲测好用
  • 木舟0基础学习Java的第二十一天(数据库,MySQL,SQLyog)
  • python-鼠标绘画线条程序
  • 【Python实战】如何优雅地实现 PDF 去水印?
  • Keysight(原Agilent) E4980AL 精密 LCR 表特性与技术指标
  • 【运维】Redis主从复制 配置
  • C++ 微积分 - 求导 - 自动微分(Automatic Differentiation)
  • 面试题-每日5道
  • STM32卡死、跑飞如何调试确定问题
  • 代理模式和Spring MVC
  • 深入理解Vue slot的原理
  • git fetch作用与用法
  • pycharm如何查看git历史版本变更信息
  • 【2.2 python中的变量】
  • Python软体中找出一组字符串的最长公共前缀:算法与实现
  • git lfs使用(huggingface下载大模型文件)-教程记录
  • 1. 什么是操作系统
  • 数据科学 - 数据预处理 (数据清洗,结构化数据)
  • 基于SpringBoot+Vue的校车调度管理系统(带1w+文档)
  • 基于改进拥挤距离的多模态多目标优化差分进化(MMODE-ICD)求解无人机三维路径规划(MATLAB代码)
  • opencascade AIS_Trihedron源码学习 绘制三轴坐标系
  • 【C++】C++应用案例-通讯录管理系统
  • 使用Python自动批量提取增值税发票信息并导出为Excel文件
  • vitis (eclipse) 的Indexer不能搜索、不能跳转到函数和变量定义和声明不能打开调用层次的解决方法
  • 最佳HR软件指南:11款高效管理工具
  • 家长为孩子出国留学择校的四个步骤
  • 数据挖掘可以挖掘什么类型的模式?