Star

nGQL语法实现问题

nebula 版本:v2.0.0-rc1
部署方式:单机
问题:在使用nGQL时,需要实现类似sql两个表关联的问题,类似join,left join,
我查了一些文档现在ngql有INTERSECT, MINUS这两个,但是这两个有设置关联的key的选择吗,类似sql中中left join ,on a.key1=b.key2,如果没有有其他集合运算符吗

暂时没有支持用户层面的join功能,可以说具体一下你遇到什么问题么

table1
id id1 age city
1 3 6 “北京”
2 4 20 “上海”

table2
id id1 sex
2 4 0
8 7 1

实现:
table1 left join table2 on table1.id = table2.id and table1.id1 = table2.id1

结果:
id id1 age city sex
1 3 6 “北京” null
2 4 20 “上海” 0

请问这个用ngql怎么实现呢

还有上边的table1 和table2都是经过ngql返回的数据,不是节点vertex_tag或者边edge_type

这样的话现在还不支持,只能用户在应用里自行处理。
@jude-zhu 有用户提到join

具体怎么在应用中处理呢,有没有合理的方案或者建议呢

两次查询出结果然后自己join一下 :sweat_smile:

你的意思是用其他语言取join一下吗

嗯嗯,也只能这样了,后边后开发支持left join/full join一类的关联方法吗

在应用里实现一下join的功能

你指的应用是指???

就是你写的应用代码

是有这个需求的,不过现在主要还是在稳定性和兼容cypher的工作上

就是你写的应用代码 ???这个应用代码不是用ngql实现的吧,打比方我用java客户端获取图数据库数据那应用代码就是java吧

是的,目前nebula还不支持,一定需要的话只能用java写一下join的逻辑

ok,明白了

浙ICP备20010487号