1: n или n: m, таблица отношений - PullRequest
1 голос
/ 06 января 2020

У меня есть две таблицы: Sentence и FollowUp.

Предложение просто хранит строковые предложения и несколько столбцов метаданных. FollowUp сохраняет, за какими предложениями следуют некоторые другие предложения. Итак, в моей таблице последующих ссылок я ссылаюсь на два предложения:

Мой вопрос: есть ли связь между этими двумя таблицами 1: n или n: m?

Мое объяснение было бы следующим: 1 строка из предложения содержит в основном две ссылки в FollowUp (одна предложение, одно предложение от). 1 строка из FollowUp также ссылается на более чем одну строку в предложении.

Итак, n: m верно, но какую промежуточную таблицу я должен использовать между этими двумя?

Ответы [ 2 ]

0 голосов
/ 06 января 2020

По структуре данных это связанный список. Как таковые могут быть одно или два отношения. Там будет:

  1. Предложение - Подписано - Предложение

  2. Предложение - За ним следует - Предложение ( Необязательно )

Если у вас есть оба отношения, у вас есть двусвязный список.

На основании вашего описания оба они 1 - 1 отношений, так что вы можете просто поместить их в таблицу Sentence, например:

Предложение (значение, metadataColumn1, ..., metadataColumnN, previousSentence, nextSentence)

0 голосов
/ 06 января 2020

Это отношение n: m, но вам не нужна другая таблица, потому что оба объекта, участвующие в этом отношении, Sentence.

Другими словами, учитывая, что для отношения n: m требуется промежуточная таблица для записи пар, ваша таблица FollowUp служит этой промежуточной таблицей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...