SQL ORACLE: реструктуризация таблиц - PullRequest
0 голосов
/ 25 февраля 2019

Я хочу объединить данные, как описано ниже:

У меня есть таблица ниже:

таблица: PTLANALYSIS

RENTALDATE
OUTBOUND,
INBOUND,
VEHICLE_SIZE,
COMPETITOR,
RATE;

Данные, которые я пытаюсьзагрузить во вкладки:

RENTALDATE,
OUTBOUND,
INBOUND,
VEHICLE_SIZE,
LOLY,
KAY,
RATE;

Теперь предполагается, что LOLY и KAY находятся в столбце «Конкурент» в таблице PTLANALYSIS.Может кто-нибудь помочь мне слить мои данные соответствующим образом, вывод должен выглядеть примерно так ...

Rental Date | OUTBOUND | INBOUND | VEHICLE_SIZE | COMPETITOR | RATE
12/28/2019    223          333        small         loly        33.5
12/28/2019    223          333        small         kay         33.5

В настоящее время это выглядит так в моем CSV ..

Rental Date  | OUTBOUND | INBOUND | VEHICLE_SIZE | lolyRATE   | KAYRATE 
12/28/2019       223         333          small      33.5          NULL     
12/28/2019       223         333          small      NULL          33.5     

Заранее спасибо!

1 Ответ

0 голосов
/ 25 февраля 2019

Большинство столбцов в файле CSV имеют фиксированные цели.Вам нужно оценить LOLYRATE и KAYRATE, чтобы условно заполнить COMPETITOR и RATE.Примерно так:

insert into PTLANALYSIS (
    RENTALDATE
    OUTBOUND,
    INBOUND,
    VEHICLE_SIZE,
    COMPETITOR,
    RATE
)
select 
    RENTALDATE,
    OUTBOUND,
    INBOUND,
    VEHICLE_SIZE,
    case when LOLYRATE is not null then 'loly' else 'kay' end as competitor,
    coalesce(LOLYRATE, KAYRATE) as rate
from ext_table
;

Вы не сказали, как вы собираетесь загружать данные, но я предположил, что есть внешняя таблица, потому что она позволяет вам использовать SQL, а с SQL все проще. Узнать больше .

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