OrientDB SQL: 检索非零度数的顶点

OrientDB SQL: Retrieve vertices with non-zero degree

我想检索 SQL 查询中至少有一个连接(非零度)的所有顶点。只返回 rid 可能没问题,但 select 属性也很好。

边缘有 "in" 和 "out" 属性,所以我可以制作一组。我不确定如何使用 OrientDB sql.

此外,我认为有一些方法可以通过直接查询顶点来更自然地做到这一点。我看到顶点记录了 IN 和 OUT,边 Class 名称在下面。但是我不知道如何在 SQL 查询中访问顶点 IN 和 OUT。

下面的查询应该可以解决问题

SELECT FROM V WHERE both().size() > 0

如果您需要额外的属性或额外的过滤器,您可以将它们添加到查询中,例如。

SELECT property1, property2 FROM V WHERE both().size() > 0 and foo = 'bar'

IN 和 OUT 通过 in()out() 访问。这些可以在 SELECT 之后立即检索它们,或者在 Luigi 使用 both() 的谓词中(in()out() 的缩写)。

"graphy" 函数的完整列表在文档中,here,在第一列。