首页 > 数据库 >图数据库入门教程(七)结果处理

图数据库入门教程(七)结果处理

时间:2022-08-29 10:44:11浏览次数:48  
标签:10 张三 name both 处理 数据库 入门教程 person level

1. count()

统计当前结果的数量

//1. 查询所有节点数量
g.V().count()
//2. 查询label是person的节点数量
g.V().hasLabe('person').count()
//3. 查询张三好友的数量
g.V().has('person','name','张三').both().count()

2. limit(n)

限制返回结果数

//1. 返回一个节点
g.V().limit(1)
//2. 查询label是person的节点,返回2个节点
g.V().hasLabe('person').limt(2)
//3. 查询张三好友,返回两个好友
g.V().has('person','name','张三').both().limt(2)

3. skip(n)

一般和limit(n)搭配用,可以用来分页

//1. 查询张三好友,返回前10个好友
g.V().has('person','name','张三').both().skip(0).limt(10)
//2. 查询张三好友,返回前10-20之间的好友
g.V().has('person','name','张三').both().skip(0).limt(10)

4. range(start,end)

查询指定区间的数据

//1. 查询张三好友,返回前10个好友
g.V().has('person','name','张三').both().range(0,10)
//1. 查询张三好友,返回前10-20之间的好友
g.V().has('person','name','张三').both().range(10,20)

注:range(0,10),返回 0-9角标的数据,range(10,20),返回10-19角标的数据

5. dedup()

对结果去重

//1. 查询张三好友,去除重复的还有
g.V().has('person','name','张三').both().dedup()

6. values()

查询指定属性

//1. 查询张三好友,返回它们的名称
g.V().has('person','name','张三').both().dedup().values('name')

输出

[
    "李四",
    "王五",
    "孙八"
]

7. id()

返回id属性

//1. 查询张三好友,去除重复的返回id
g.V().has('person','name','张三').both().dedup().id()

输出

[
    77952,
    77992,
    82048
]

8. project().by()

g.V().has('person', 'name', '张三').both().project('name','level').by('name').by(constant(1))

输出

[
    {
        "name": "李四",
        "level": 1
    },
    {
        "name": "王五",
        "level": 1
    },
    {
        "name": "孙八",
        "level": 1
    }
]

从当前结果中提取字段到map中,可以看到上面我们提取了name字段,level字段,其中level字段用一个常量填充,常量需要用constant()修饰。

上面的代码还有另一种写法

g.V().has('person', 'name', '张三').both().as('name','level').select('name', 'level').by('name').by(constant(1))

输出

[
    {
        "name": "李四",
        "level": 1
    },
    {
        "name": "王五",
        "level": 1
    },
    {
        "name": "孙八",
        "level": 1
    }
]

fold

将结果放入list

unfold

将结果展开

g.V().has('code','AUS').valueMap().unfold()

标签:10,张三,name,both,处理,数据库,入门教程,person,level
From: https://www.cnblogs.com/roylee666/p/16635063.html

相关文章

  • 图数据库入门教程(三)安装图数据库环境
    前面唠叨了一大堆,是不是已经迫不及待上手练练了,Let'sgo搭建janusgraph图数据库服务假设我们线上用的是阿里云的gdb,我们要学习gdb有两种方式:自己买一台使用其他实现......
  • 图数据库入门教程(一)简单理解图数据库
    以下内容是个人的理解,一家之言,可能误导,但能入门为什么会有图数据库?作为研发,我们接触最多的当属关系型数据库:Mysql、Oracle,还有一些非关系型数据库:MongoDB、Redis等,再广......
  • 图数据库入门教程(二)认识tinkerpop与gremlin
    上一篇文章我们对图数据库有了一个简单的理解,对于关系的计算优雅而快速,适用与一些关系计算的场景,比如社交网络、金融反欺诈、商机发现、智能推荐等,想了解更多可以看一下阿......
  • mysql导入.idb文件进行修复数据库
    背景:数据库在运行过程中出现了问题,需要根据*.idb文件进行找回数据操作步骤:1)先创建一个同样数据格式的表(之前存在的话备份删除,最好先在新的数据库中走一遍流程)--......
  • 057_末晨曦Vue技术_处理边界情况之强制更新和创建低开销的静态组件
    强制更新和创建低开销的静态组件点击打开视频讲解更加详细强制更新如果你发现你自己需要在Vue中做一次强制更新,99.9%的情况,是你在某个地方做错了事。你可能还没有留......
  • go语言文件处理-01
    go语言json文件的读写操作JSON是一种使用UTF-8编码的纯文本格式,采用完全独立于语言的文本格式,由于写起来比XML格式方便,并且更为紧凑,同时所需的处理时间也更少,致使JS......
  • 三丰主机数据库对外使用操作
    设备mysql数据库对外使用的方法:一、找到使用电脑的互联网IP二、进行界面设置  通过以上设置,就可以正常访问数据库了......
  • PowerShell教程 - 异步处理(Asynchronous Processing)
    更新记录转载请注明出处。2022年8月29日发布。2022年8月29日从笔记迁移到博客。异步处理(AsynchronousProcessing)休眠(Sleep)指定时间Start-Sleep实例:休眠1秒S......
  • JMeter 后置处理器之JSON提取器
    后置处理器之JSON提取器By:授客QQ:1033553122测试环境JMeter5.4.1插件介绍JSON后置处理器(PostProcessor)允许使用JSONPath语法从JSON格式的响应中提取数据。类似正......
  • Flyway管理数据库MySQL5.7入坑记录(二)
    在成功加入Flyway的Gradle的插件后,在Gradle的任务中选择flyway->flywayMigrate,进行数据库迁移操作,于是出现下面的问题。第二坑:执行flyMigrate出现错误信息:flywayNodatab......