У меня есть таблица, в которой есть объекты, и эти объекты могут иметь несколько адресов. Адреса также имеют добавленную дату. Я хотел бы вернуть все строки адреса для данного объекта и отметить последний добавленный адрес как строку Primary и пометить оставшиеся строки как Not Primary.
Это то, с чем я работаю
select
A.ADDRESS_KEY
||','||
e.PERSON_COMPANY_FLAG
||','||
e.ENTITY_KEY
||','||
Decode(a.ADDRESS_TYPE_KEY, '1', 'ADDR_OFFI', '2', 'ADDR_HOME', '3', 'ADDR_POBO', '4', 'ADDR_BUSI', '2212779', 'ADDR_TENN', '2212780', 'ADDR_OTHE', '2212781', 'ADDR_PYMT')
||','||
a.date_added
IS THIS THE PRIMARY ADDRESS Y OR N
||','||
A.STREET
--REPLACE(REPLACE(a.street, CHR(10), ' '), CHR(13), ' ')
||','||
a.city
||','||
rtrim(a.zip_code)
||','||
a.state
||','||
a.country
from
oclp000.entity e
join oclp000.address a on e.ENTITY_KEY = a.ENTITY_KEY
join oclp000.addresstype at on a.ADDRESS_TYPE_KEY = at.ADDRESS_TYPE_KEY
where
e.person_company_flag = 'C'
and e.entity_key = 5019139
;