【问题标题】:OrientDB SQL: Retrieve vertices with non-zero degreeOrientDB SQL:检索非零度数的顶点
【发布时间】:2017-01-16 18:13:23
【问题描述】:
我想检索 SQL 查询中至少有一个连接(非零度)的所有顶点。只是返回 rid 可能是可以的,但选择属性也很好。
边缘有“in”和“out”属性,所以我可以制作一组。我不确定如何使用 OrientDB sql 执行此操作。
另外,我认为通过直接查询顶点可以更自然地做到这一点。我看到顶点记录了 IN 和 OUT,以及下面的边缘类名称。但我不知道如何在 SQL 查询中访问顶点 IN 和 OUT。
【问题讨论】:
标签:
sql
graph
orientdb2.2
【解决方案1】:
下面的查询应该可以解决问题
SELECT FROM V WHERE both().size() > 0
如果您需要其他属性或其他过滤器,您可以将它们添加到查询中,例如。
SELECT property1, property2 FROM V WHERE both().size() > 0 and foo = 'bar'
【解决方案2】:
通过in() 和out() 访问IN 和OUT。这些可以紧跟在SELECT 之后以检索它们,或者在Luigi 使用both()(in() 和out() 的缩写)的谓词中。
“graphy”函数的完整列表在文档here 的第一列中。