У меня эти две таблицы ниже, мне нужно обновить Table1.Active_flag
до Y
, где Table2.Reprocess_Flag
- N
.Обновление в оракуле с соединением двух таблиц
Table1
+--------+--------------+--------------+--------------+-------------+
| Source | Subject_area | Source_table | Target_table | Active_flag |
+--------+--------------+--------------+--------------+-------------+
| a | CUSTOMER | ADS_SALES | ADS_SALES | N |
| b | CUSTOMER | ADS_PROD | ADS_PROD | N |
| CDW | SALES | CD_SALES | CD_SALES | N |
| c | PRODUCT | PD_PRODUCT | PD_PRODUCT | N |
| d | PRODUCT | PD_PD1 | PD_PD1 | N |
| e | ad | IR_PLNK | IR_PLNK | N |
+--------+--------------+--------------+--------------+-------------+
Table2
| Source | Subject_area | Source_table | Target_table | Reprocess_Flag |
+--------+--------------+--------------+--------------+----------------+
| a | CUSTOMER | ADS_SALES | ADS_SALES | N |
| b | CUSTOMER | ADS_PROD | ADS_PROD | N |
| CDW | SALES | CD_SALES | CD_SALES | N |
| c | PRODUCT | PD_PRODUCT | PD_PRODUCT | Y |
| d | PRODUCT | PD_PD1 | PD_PD1 | Y |
| e | ad | IR_PLNK | IR_PLNK | N |
+--------+--------------+--------------+--------------+----------------+
Ваш вопрос непонятен. – FDavidov
Вы что-то пробовали? Разместите код пожалуйста – Aleksej
UPDATE hdfs_cntrl SET active_flag = 'Y' где источник в (выберите источник из proc_cntrl где Reprocess_Flag = 'N') и subject_area в (выберите subject_area из proc_cntrl где Reprocess_Flag = 'N') и source_table в (выберите target_table из proc_cntrl где Reprocess_Flag = 'N'); –