Получение результата подграфа в ArangoDb

Я использую ArangoDB соответствующей серии выпусков: 3.1.

Режим: односерверный

В этой операционной системе: Windows, версия: 10

Пожалуйста, спросите, как получить результат подграфа для запроса в ArangoDb?

Например: если у меня есть узлы студентов, связанные с узлом университета ребром (studyAt), и мне нужно видеть только студентов, возраст которых> 21, поэтому мне нужно увидеть подграф, который содержит только этих студентов, связанных с университетом. узел.


person MohamadHassanHijab    schedule 28.03.2018    source источник
comment
Привет, а ты пробовал? Было бы здорово, если бы вы могли привести пример, проверьте [Как создать минимальный, полный и проверяемый пример] (stackoverflow.com/help/ mcve).   -  person iksajotien    schedule 28.03.2018
comment
Добро пожаловать в Stack Overflow! Запросы на чистое написание кода не относятся к теме Stack Overflow — мы ожидаем, что вопросы здесь будут относиться к конкретным проблемам программирования — но мы с радостью поможем вам написать это самостоятельно! Расскажите нам что вы пробовали и где вы застряли. Это также поможет нам лучше ответить на ваш вопрос.   -  person Tim Diekmann    schedule 28.03.2018


Ответы (1)


Для этого варианта использования вы можете использовать обход графа AQL, начиная с узла вашего университета с глубиной 1. Применение фильтра age > 21 к вершинам первого уровня гарантирует, что будут возвращены только студенты со значением возраста > 21.

Следующий запрос AQL является черновиком, который необходимо скорректировать, используя ваши имена переменных.

FOR v, e, p IN 1..1 ANY 'universityCollection/universityNode' GRAPH 'yourGraph'
  FILTER p.vertices[1].age > 21
  RETURN v

После выполнения этого запроса в веб-интерфейсе результат отображается в виде JSON и графика, а результат подграфа можно загрузить в виде файла JSON.

Дополнительную информацию о том, как использовать обход графа, можно найти в документации по AQL.

person Maximilian Kernbach    schedule 28.03.2018
comment
Привет Максимилиан Кернбах, спасибо за ваш ответ, это было так полезно! Я хочу задать вам еще один вопрос: результат отображается только в виде JSON и таблицы, так как я могу увидеть его в виде графика? (Я имею в виду узлы и ребра, как на графе в веб-интерфейсе) - person MohamadHassanHijab; 28.03.2018
comment
Просто замените RETURN v на RETURN p, что в результате вернет путь. Это позволит вам выбрать график вместо таблицы и также открыть результат в средстве просмотра графиков. - person Maximilian Kernbach; 28.03.2018