У меня очень интересная ситуация. Допустим, у меня есть 3 почтовых отделения, 2 из них имеют тип «ТПС» и 1 «ПВПЗ», моя задача - указать адрес «ТПС» в «ПВПЗ», если они имеют одинаковый индекс.
вот мой скрипт
SELECT
PARENTPOSTDISTRICT.POSTCODE,
CASE WHEN ??? THEN ??? END address,
PARENTTYPE.ACRONYM_UA
FROM ADDR_POSTOFFICE PARENT
INNER JOIN ADDR_POSTOFFICETYPE PARENTTYPE
ON PARENT.POSTOFFICETYPE_ID = PARENTTYPE.ID AND PARENTTYPE.ACRONYM_UA IN ( 'ПВПЗ','ТПС')
INNER JOIN ADDR_POSTDISTRICT PAREntPOSTDIStRICT ON PARENT.ID = PAREntPOSTDIStRICT.POSTOFFICE_ID
WHERE PARENT.DATESTOP >= SYSDATE
AND PARENTPOSTDISTRICT.POSTCODE = '20234';
ADDR_POSTOFFICE - таблица с почтовыми отделениями. ADDR_POSTOFFICETYPE - таблица с типами почтовых отделений. ADDR_POSTDISTRICT - допустим, это таблица с почтовыми индексами. последнее условие, POSTCODE = INDEX (PARENTPOSTDISTRICT.POSTCODE = '20234')
какие-либо решения? если вам нужна дополнительная информация, просто спросите, я понимаю, что это сложно.
в другом примере у меня есть 3 цвета с 3 числами и одинаковыми индексами
black, test1, 1
yellow, test2, 1
red, test3, 1
мне нужен результат, чтобы быть
black, test1, 1
yellow, test1, 1
red, test3, 1
и точно значение там не просто строка, это запись из строки.