существует пять существующих таблиц:SQL присоединиться над M: N таблицу
(MAIL)
id senderFK receiverFK text
Отправители и приемники упоминаться в MN
таблице:
(MN)
id studentFK teacherFK guestFK
Каждая запись в MN
могут только залили id
и один из трех столбцов внешнего ключа. Если одна строка, например, имеет id
42 и 16 в studentFK
, он referes к входу с с id
16 в следующей таблице:
(STUD)
id name grade hasStudCard
Два других возможных таблиц для отправителей/приемники:
(TEACH)
id name age telephone
и
(GUEST)
id department
Студенты, учителя и гость могут быть отправителем или получателем почты.
Теперь я хочу создать представление, которое заполняет почтовую таблицу всеми данными, которые могут иметь отправители и получатели. Конечно, я мог бы сделать полное внешнее соединение на Mail
, MN
и три других на идентификаторах. Но есть ли более эффективный способ сделать это?
Вы можете изменить структуру таблицы? Эта структура является kludgy и не находится в 3NF imo. – Leslie
Это просто абстракция для более сложной структуры таблицы, так что это зависит ... :) В какой форме вы думаете? – Norbert
Так что это существующая структура, или вы все еще думаете об этом? –