Я не могу это взломать - у меня есть две таблицы (Persons
и Companies
), и я пытаюсь создать представление, которое:
показывает всех лиц
также возвращает компании один раз, независимо от того, сколько людей связано с ней
заказы по именам в обеих таблицах
Для пояснения, некоторые примеры данных:
(Table: Companies)
Id Name
1 Banana
2 ABC Inc.
3 Microsoft
4 Bigwig
(Table: Persons)
Id Name RelatedCompanyId
1 Joe Smith 3
2 Justin
3 Paul Rudd 4
4 Anjolie
5 Dustin 4
Вывод, который я ищу, выглядит примерно так:
Name PersonName CompanyName RelatedCompanyId
ABC Inc. NULL ABC Inc. NULL
Anjolie Anjolie NULL NULL
Banana NULL Banana NULL
Bigwig NULL Bigwig NULL
Dustin Dustin Bigwig 4
Joe Smith Joe Smith Microsoft 3
Justin Justin NULL NULL
Microsoft NULL Microsoft NULL
Paul Rudd Paul Rudd Bigwig 4
Как видите, новый столбец «Имя» упорядочен по обеим таблицам (названия компаний отображаются правильно между именами сотрудников), и каждая компания отображается ровно один раз, независимо от того, сколько людей связано с ней.
Может ли это быть даже сделано в SQL ?! Постскриптум Я пытаюсь создать представление, чтобы потом использовать его для удобного поиска данных, полнотекстовой индексации и упростить программирование, просто запросив представление.