学习Gremlin - 5.图查询返回结果数限制

本文详细介绍了在Gremlin中如何使用count(),range(),limit(),tail(),和skip()函数进行图查询,包括统计元素个数、指定范围截取以及前后元素的限制操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

5.图查询返回结果数限制

5.1、说明

在这里插入图片描述

  • Gremlin能统计查询结果集中元素的个数,且允许从结果集中做范围截取。假设某个查询操作(如:g.V())的结果集包含8个元素,我们可以从这8个元素中截取指定部分。主要包括:

  • count(): 统计查询结果集中元素的个数;

  • range(m, n): 指定下界和上界的截取,左闭右开。比如range(2, 5)能获取第2个到第4个元素(0作为首个元素,上界为-1时表示剩余全部);

  • limit(n): 下界固定为0,指定上界的截取,等效于range(0, n),语义是“获取前n个元素”。比

  • limit(3)能获取前3个元素;

  • tail(n): 上界固定为-1,指定下界的截取,等效于range(count - n, -1),语义是“获取后n个元素”。比如tail(2)能获取最后的2个元素;

  • skip(n): 上界固定为-1,指定下界的截取,等效于range(n, -1),语义是“跳过前n个元素,获取剩余的元素”。比如skip(6)能跳过前6个元素,获取最后2个元素。

5.2、实例讲解

5.2.1、 count():查询当前traverser中的元素的个数,元素可以是顶点、边、属性、路径等。
//查询图中所有顶点的个数
g.V().count()
//查询图中类型为“人person”的顶点数
g.V().hasLabel('person').count()
//查询图中所有的 “人创建created” 的边数
g.V().hasLabel('person').outE('created').count()
//查询图中所有顶点的属性数
g.V().properties().count()
5.2.2、 range():限定查询返回的元素的范围,上下界表示元素的偏移量,左闭右开。下界以“0”作为第一个元素,上界为“-1”时表示取到最后的元素。
//不加限制地查询所有类型为“人person”的顶点
g.V().hasLabel('person').range(0, -1)
//查询类型为“人person”的顶点中的第2个到第5个
g.V().hasLabel('person').range(2, 5)
//查询类型为“人person”的顶点中的第5个到最后一个
g.V().hasLabel('person').range(5, -1)
5.2.3、 limit():查询前“n”个元素,相当于range(0, n)
//查询前两个顶点
g.V().limit(2)
//查询前三条边
g.E().limit(3)
5.2.4、 tail():与limit()相反,它查询的是后“n”个元素,相当于range(count - n, -1)
//查询后两个顶点
g.V().tail(2)
//查询后三条边
g.E().tail(3)
5.2.5、 skip():跳过前“n”个元素,获取剩余的全部元素
// 跳过前5个,skip(5)等价于range(5, -1)
g.V().hasLabel('person').skip(5)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值