سؤال

هل هناك طريقة لإنشاء علاقة ثنائية الاتجاه في Neo4J باستخدام Cypher؟أرغب في أن تكون العلاقة ثنائية الاتجاه بدلا من جعل علاقات أحادية الاتجاه في كلا الاتجاهين على سبيل المثال:

giveacodicetagpre.

بدلا من:

giveacodicetagpre.

شكرا مقدما :)

هل كانت مفيدة؟

المحلول

لا، ليس هناك.جميع العلاقات في NEO4J لها اتجاه، بدءا ونهاية عقدة معينة.

هناك عدد صغير من الحلول.

  • أولا، كما اقترحت، يمكننا إما أن يكون لديك علاقاتتين، واحد يذهب من A إلى B والآخر من B إلى A.

  • بدلا من ذلك، عند كتابة استفسار المباراة لدينا، يمكننا تحديد لمطابقة الأنماط بدون اتجاه، باستخدام استعلام مثل

    giveacodicetagpre.

    والتي لن تهتم بما إذا كان هناك أصدقاء مع B أو العكس، ويسمح لنا باختيار اتجاه تعسفي عندما نخلق العلاقة.

نصائح أخرى

وفقا لهذه المقالة: بيانات النمذجة في NEO4J: علاقات ثنائية الاتجاه

الخيار الأفضل بدقة هو إنشاء علاقة في اتجاه تعسفي وعدم تحديد الاتجاه عند الاستعلام:

giveacodicetagpre.

المحرك قادر على اجتياز الحافة في أي اتجاه.إن إنشاء حافة مكافحة الاتجاه غير ضرورية ويعمل فقط على إضاعة الفضاء والحق في الوقت المناسب.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top