Таблица CUST_DAY0_MERGE
имеет следующие столбцы
NEW_CUST_ID
ACTIVE_REF_ID
OLD_REF_ID_1
OLD_REF_ID_2
OLD_REF_ID_3
Я хочу создать оператор вставки в таблицу CUST_REVIEWS
со следующими столбцами:
CUST_REVIEW_ID
RUN_DATE
CUST_ID
CUST_SOURCE_UNIQUE_ID
CUST_SOURCE_REF_ID
Эта вставкаоператор должен выполнить внутренний запрос соединения с CUST_DAY0_MERGE
со следующими условиями:
CUST_DAY0_MERGE.OLD_REF_ID_1`=`CUST_REVIEWS.CUST_SOURCE_REF_ID
CUST_DAY0_MERGE.OLD_REF_ID_2`=`CUST_REVIEWS.CUST_SOURCE_REF_ID
CUST_DAY0_MERGE.OLD_REF_ID_3`=`CUST_REVIEWS.CUST_SOURCE_REF_ID
Если указанные выше условия выполняются, новая запись будет вставлена в CUST_REVIEWS
со следующими условиями:
CUST_REVIEWS.CUST_ID`=`CUST_DAY0_MERGE.NEW_CUST_ID
CUST_REVIEWS.CUST_SOURCE_UNIQUE_ID`=`CUST_DAY0_MERGE.NEW_CUST_ID
Для других столбцы должны оставаться неизменными в соответствии с существующим значением.
У меня есть пример оператора в следующем порядке:
INSERT INTO CUST_REVIEWS(CUST_REVIEW_ID,RUN_DATE,CUST_ID,CUST_SOURCE_UNIQUE_ID,CUST_SOURCE_REF_ID)
SELECT CUST_REVIEW_ID,RUN_DATE,CUST_ID,CUST_SOURCE_UNIQUE_ID,CUST_SOURCE_REF_ID
FROM CUST_REVIEWS reviews
INNER JOIN CUST_DAY0_MERGE merge1
ON (reviews.CUST_SOURCE_REF_ID = merge1.OLD_REF_ID_1)
INNER JOIN CUST_DAY0_MERGE merge2
ON (reviews.CUST_SOURCE_REF_ID = merge2.OLD_REF_ID_2)
INNER JOIN CUST_DAY0_MERGE merge3
ON (reviews.CUST_SOURCE_REF_ID = merge3.OLD_REF_ID_3);
Как можно улучшить оператор вставки, изменив CUST_ID
иCUST_SOURCE_UNIQUE_ID
с условием, которого я хотел бы достичь?