Множественное лево-внешнее объединение приводит к дублированию строк - PullRequest
1 голос
/ 12 марта 2012

У меня есть большой стол с Инцидентами. При этом я хочу добавить значения из Прикрепления к инцидентам и Комментариев к инцидентам. Я использовал левое внешнее соединение, так как могут быть или не быть какие-либо комментарии ИЛИ вложение для Инцидента.
Теперь, когда я использую несколько внешних соединений, я получаю дублированные строки.

Существует значение инцидента, общее для всех таблиц

INC1   ATT1   COMMENT1
INC1   ATT1   COMMENT2
INC1   ATT2   COMMENT1
INC1   ATT2   COMMENT2

Но на самом деле результат должен быть:

INC1   ATT1   COMMENT1
INC1   ATT2   COMMENT2

чтобы значения вложения и комментария были независимы при присоединении к таблице инцидентов.

select inc,att.attname,comment.commenttext 
from   inc 
       left outer join att inc.incidentID=att.incidentID
       left outer join comment inc.incidentID=comment .incidentID

Возможно ли это?

1 Ответ

2 голосов
/ 12 марта 2012

Одна из вещей, которые я пока отбираю из ваших ответов, заключается в том, что для данного инцидента нет прямой связи между его приложениями и его комментариями.Если я правильно понимаю, вы хотите рассматривать инцидент как простой «контейнер» для вложений и комментариев, и вам просто нужен список каждого из них.Какое вложение появляется в той же строке, что и конкретный комментарий, является для вас случайным

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