У меня есть таблица собственности, в которой каждый владелец земли имеет отдельную запись. Чтобы создать более эффективные почтовые программы, мы хотим создать представление, которое может сочетать совместное владение супругами. Супруги имеют одинаковый номер клиента, однако у них есть отдельный код адреса для разграничения между отдельными лицами. Каждое свойство имеет одного основного владельца и может иметь любое количество вторичных владельцев. Мне нужно сгруппировать владельцев собственности (PID) с тем же номером клиента и включить те, у которых есть отдельный номер.Присоединиться к данным из одной таблицы
Для примера:
╔══════════╦═══════════╦══════════╦════════════╦════════════╗
║ PID ║ OwnerName ║ OwnerType║CustomerNum ║AdressCode ║
╠══════════╬═══════════╬══════════╬════════════╬════════════╣
║ 100 ║Smith,John ║Primary ║SMI001 ║ 01 ║
║ 100 ║Smith,Jane ║Secondary ║SMI001 ║ 02 ║
║ 100 ║Smith,Dave ║Secondary ║SMI002 ║ 01 ║
║ 150 ║Jones,Rob ║Primary ║JON001 ║ 01 ║
╚══════════╩═══════════╩══════════╩════════════╩════════════╝
Должен иметь выход как:
╔══════════╦═══════════╦══════════╦════════════╗
║ PID ║OwnerName1 ║OwnerName2║CustomerNum ║
╠══════════╬═══════════╬══════════╬════════════╣
║ 100 ║Smith,John ║Smith,Jane║SMI001 ║
║ 100 ║Smith,Dave ║ ║SMI002 ║
║ 150 ║Jones,Rob ║ ║JON001 ║
╚══════════╩═══════════╩══════════╩════════════╝
я использовал следующий запрос:
Select
O1.PID as PID,
O1.OwnerName as OwnerName1,
O2.OwnerName as OwnerName2,
O1.CustomerNum
From ownertable O1 left outer join
ownertable O2 on O1.PID = O2.PID
Where O1.CustomerNum = o2.CustomerNum AND O1.OwnerType = 'Primary Owner'
Запрос кажется скопировать имя владельца в оба поля имени, когда нет вторичного владельца, а также создают дублируемую запись, инвертирующую OwnerNa me1 и OwnerName2. Я не уверен, что изменить в моем запросе, чтобы исправить эту проблему.