Gremlin 语法常用查询语句

本文详细介绍了Gremlin,Apache TinkerPop框架下的图遍历语言,用于处理属性图的查询和遍历。通过示例展示了如何查询特定Label的顶点、按属性筛选、限制查询结果数量、查看边的Label、统计结果、去重等操作,适用于图数据库管理和分析。

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

Gremlin 语法查询语句

Gremlin是 Apache TinkerPop 框架下的图遍历语言。Gremlin是一种函数式数据流语言,可以使得用户使用简洁的方式表述复杂的属性图(property graph)的遍历或查询。每个Gremlin遍历由一系列步骤(可能存在嵌套)组成,每一步都在数据流(data stream)上执行一个原子操作。

1. 查询某个 Label 的所有的点

g.V().hasLabel('persion')

2. 查询某个 Label ,根据属性条件筛选:

g.V().hasLabel('persion').has('name','张三')

3. 使用 limit 对查询条数进行限制 :

g.V().hasLabel('persion').has('name','张三').limit(10)

4. 使用 tail 查看后几条数据 :

g.V().hasLabel('persion').has('name','张三').tail(10)

5. 使用 timeLimit 查看在10毫秒内查询到的结果 :

g.V().hasLabel("persion").timeLimit(10)

6. 查询出边的 Label :

g.V().hasLabel('persion').has('name','张三').out()

7. 查询出边的 Label , 根据某个关系 :

g.V().hasLabel('persion').has('name','张三').out('info')

8. 查询入边的 Label :

g.V().hasLabel('persion').has('name','张三').in()

9. 查询入边的 Label , 根据某个关系 :

g.V().hasLabel('persion').has('name','张三').in('info')

10. 查询出边的出边,并且限制属性条件 :

g.V().hasLabel('persion').has('name','张三').out('info').out('info').has('age','18')

11. 判断是否存在结果:

g.V().hasLabel('persion').has('name','张三').out('info').out('info').has('age','18').hasNext()

12. 对结果统计数目:

g.V().hasLabel('persion').has('name','张三').out('info').out('info').has('age','18').count()

13. 对结果分组统计数目:

g.V().hasLabel('persion').has('name','张三').out('info').out('info').has('sex','男').groupCount().by('age')

14. 使用 dedup 去重:

g.V().hasLabel('persion').has('name','张三').out('info').out('info').has('sex','男').dedup()

15. 查询出边的信息:

g.V().hasLabel('persion').has('name','张三').outE()

16. 查询指定出边的信息:

g.V().hasLabel('persion').has('name','张三').outE('info')

17. 查询入边的信息:

g.V().hasLabel('persion').has('name','张三').inE()

18. 查询指定入边的信息:

g.V().hasLabel('persion').has('name','张三').inE('info')

19. 查询所有的出边指向的label:

g.V().hasLabel('persion').has('name','张三').outE().inV()

20. 查询所有的出边的label:

g.V().hasLabel('persion').has('name','张三').outE().outV()

21. 查询两个点之间的边信息:

g.V().hasLabel('persion').has('name','张三').outE().as('e').inV().has('name','李四').select('e')
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小毕超

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值