2016-10-05 3 views
0

У меня есть этот запрос, который работает в студии, который для данного работника возвращает тех других работников, которые их рекомендуют.SQL-ответ на JSON для нетривиального запроса

[Worker: V] -> [RecommendedBy: E] -> [Рабочий: V]

Im построения SQL, чтобы вернуть некоторые выбранные данные из Е и V, что рекомендую. Так ниже работает

SELECT out('RecommendedBy').firstName as recommendedByFirstName, 
     out('RecommendedBy').lastName as recommendedByLastName, 
     out('RecommendedBy')[email protected] as recommendedByRID, 
     outE('RecommendedBy').recommendationHeadline as headline 
FROM Worker WHERE userName = 'paulw'; 

Как я могу преобразовать ответ на вышеупомянутый вопрос ADHOC к одному объекту JSON с помощью @ this.toJSON? Я могу получить что-то вроде ниже, чтобы работать. Ок:

SELECT @this.toJson('rid,version,fetchPlan:in_RecommendedBy:1') FROM Worker WHERE userName = 'paulw'; 

но не для первого SQL. Любая помощь приветствуется!

+0

Вы можете найти подробную fetchPlan документацию здесь: http://orientdb.com/docs/last/Fetching-Strategies.html –

+0

Попытка: 'ВЫБРАТЬ @ this.toJson ('fetchPlan: out_RecommendedBy: -1') FROM Worker WHERE userName = 'paulw'; ' –

+0

Спасибо за ответ - это первый запрос в этом сообщении Мне нужна помощь не с второй (вторая работает, ее первая мне интересно, как вернуть JSON). Во-первых, я всего лишь хочу выделить несколько атрибутов на соответствующих Edge и Vextices .... пытался использовать операцию «Матч»? –

ответ

0

Я не уверен, что понимаю, что вам нужно, это полезно?

SELECT @this.toJson() FROM (
SELECT out('RecommendedBy').firstName as recommendedByFirstName, 
     out('RecommendedBy').lastName as recommendedByLastName, 
     out('RecommendedBy')[email protected] as recommendedByRID, 
     outE('RecommendedBy').recommendationHeadline as headline 
FROM Worker WHERE userName = 'paulw')