OrientDB - расширить () с дополнительными полями - PullRequest
0 голосов
/ 02 октября 2018

Начиная со следующего запроса:

MATCH 
    {class: MYCLASS}-->{as: a}-->{as: b} 
RETURN 
    $matches

, который возвращает:

PROPERTIES
=============
a     | b
-------------
#25:0 | #10:0
#25:0 | #9:0
#29:0 | #11:0
#29:0 | #33:0

Я хочу, чтобы все поля из b и класс a были возвращены.Также я не знаю, какие поля в b.В основном это:

SELECT
    expand(b), a.@class
FROM
    (MATCH 
        {class: MYCLASS}-->{as: a}-->{as: b} 
    RETURN 
        $matches)
;

, который, конечно, возвращает сообщение об ошибке: Cannot execute a query with expand() together with other projections DB name="test"

Любая помощь будет оценена.

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

@ Микела Бониззи, хотя ваш ответ не дал мне точного результата, который я хотел, он дал мне новую идею

SELECT 
    *, in().@class as a_class
FROM
    (MATCH 
        {class: BEWERTUNG}-->{as: a}-->{as: b} 
    RETURN 
        expand(b))
UNWIND a_class

queryresult

0 голосов
/ 04 октября 2018

Попробуйте:

select $a as b, $b.a_class as class
let $a = (select expand(b) from (MATCH {class: MYCLASS}-->{as: a}-->{as: b} RETURN $matches)),
$b = (select a.@class as a_class from (MATCH {class: MYCLASS}-->{as: a}-->{as: b} RETURN $matches))    
unwind class

Вот что вы получите:

enter image description here


Надеюсь, это поможет

С уважением

...