У меня проблема при разработке запроса:
Я должен выбрать несколько записей на основе критериев
(SELECT COL_1, COL_2,COL_3 FROM TABLE_1 WHERE COL_3 = 'CND')
Теперь мне нужно выбрать записи из двух баз данных на основе этих результатов
(SELECT XX_1, XX_2
FROM TABLE_2 WHERE TABLE_2.XX1 = TABLE_1.COL1
(from filtered results in step 1)
(SELECT YY_1, YY_2, YY_3
FROM TABLE_3 WHERE TABLE_3.YY_2 = TABLE_1.COL2)
(from filtered results in step 1)
Мне нужны результаты в виде одной таблицы
XX_1, XX_2, YY_1, YY_2, YY_3
упомянутые столбцы должны быть равны результату, и должна выбираться только запись с таким равенством.
Мне нужно запустить это на миллионах записей, поэтому производительность считается
Он будет использоваться в классах Java, поэтому, пожалуйста, не предлагайте мне никаких специфических для db команд / sql, которые не могут быть выполнены, поскольку у меня нет никаких разрешений для db, кроме чтения.
Надеюсь, мне ясно. Если нет, я объясню сомнения.
Я пробовал что-то вроде этого
SELECT *
FROM TABLE_2
JOIN
(SELECT COL_1,
COL_2,
COL_3
FROM TABLE_1
WHERE COL_3 = 'CND'
GROUP BY COL_1) TMP_TABLE
ON (TMP_TABLE.COL_1 = TABLE2.XX_1)
Но я получил представление / таблица не существует - ошибка оракула.