in(), out() и обе функции() не работают в OrientDB 2.2.32, как написано в документе

Я использую OrientDB 2.2.32, и у меня очень простая схема: вершины «Страна» и «PA» и край (тип LINK) «Is_In», который идет от PA к Country. Пробую то, что написано в документе (https://orientdb.com/docs/2.2.x/SQL-Functions.html), то есть:

select both("Is_In") from V 

чтобы получить "все входящие и исходящие вершины, связанные ребрами с меткой (классом) "Is_In".

Он ничего не возвращает, хотя я явно создал 2 вершины PA, связанные с одной вершиной Country ребром Is_In.

Я также пытаюсь это:

select both() from Country where Name="DE"

Я так понимаю, что это должно возвращать все вершины, которые связаны с вершиной класса "Страна" и имеют Имя "DE"?

Я делаю что-то неправильно?

------- РЕДАКТИРОВАТЬ------

На самом деле Браузер что-то возвращает, но это не Вершины, поэтому интерфейс Графика ничего не отображает. Кажется, что возвращается @rid.

Любая идея, почему функция Both() (или in() или out()) не возвращает полную вершину?

Кстати:

select both().Name from PA 

также дважды возвращает свойство «Имя» 1 вершины, которая соединена с 2 вершинами PA (что нормально).

Спасибо!


person Marc Segond    schedule 28.02.2018    source источник


Ответы (1)


Функции out()/in()/both() возвращают RID соединенных вершин. Вы можете расширить результат с помощью функции expand() следующим образом:

select expand(both("Is_In")) from V 
person Luigi Dell'Aquila    schedule 02.03.2018