Можно ли получить данные за один вызов для родителя и дочернего элемента в GraphQL
Пример набора данных
============================
| Id | Expression |
===========================
| 1 | N_2 + N_3 |
===========================
| 2 | N_4 + N_5 |
===========================
| 3 | N_6 + N_7 |
===========================
Итак, в основном то, что я хочу, это один вызов, например
Я хочу запросить Id - 1 и получить его выражение N_2 + N_3
разобрать N_2 + N_3, чтобы получить 2 и 3, и получить данные для 2 и 3 из
стол.
Я хочу получить это за одно обращение к базе данных.
Я читал о вложенных запросах, но, думаю, он снова попадает в базу данных. для вложенных запросов.
Пожалуйста, дайте мне знать, если есть какой-либо способ, или базы данных Graph, такие как Neo4j, являются единственным решением такой проблемы.
Я добился этого в Neo4j, но для этого я использовал SQLAlchemy для извлечения данных, а затем создал его дочерний элемент в списке таких диктов, как
{id:1, child: [1, 2, 4, 5]}
Это возможно даже в Neo4j для достижения этого без использования проблемы SQLAlchemy.
@Raj Да, в настоящее время я использую эти методы, как уже упоминалось в моем вопросе.
Хорошо, вы можете смоделировать эти данные в Neo4j с дочерними отношениями. И получить два уровня узлов в одном запросе.
Я сделал то же самое. Прошу альтернативу. Пожалуйста, прочитайте мой вопрос и дайте мне знать, если он не ясен, я отредактирую его.
Ваш вопрос ясен. Вы добавили список дочерних элементов в качестве свойства узла, отношение отличается от свойства. Вместо создания дочернего свойства со значением 1,2,4,5 создайте отдельные узлы для каждого и добавьте связь между ними. Я предполагаю, что вы знаете, что такое отношения в Neo4j.
Вы можете поделиться тем, как вы смоделировали данные в Neo4j, с какой-нибудь картинкой, чтобы было понятно.





Как вы храните данные в Neo4j? Вы создаете узел с определенным идентификатором, а затем сохраняете эти значения в дочернем свойстве?