Есть ли способ предоставить подзапрос в Oracle 11g псевдоним вроде:
select *
from
(select client_ref_id, request from some_table where message_type = 1) abc,
(select client_ref_id, response from some_table where message_type = 2) defg
where
abc.client_ref_id = def.client_ref_id;
В противном случае существует способ соединения двух подзапросов на основе client_ref_id. Я понимаю, что есть самостоятельное присоединение, но в базе данных, на которой я запускаю самостоятельное присоединение, может занять до 5 минут (есть дополнительная логика в текущем запросе, который я запускаю, но я определил, что самосоединение - это то, что вызвав проблему). Отдельные подзапросы занимают всего несколько секунд, чтобы заполнить их сами. Запрос self join выглядит примерно так:
select st.request, st1.request
from
some_table st, some_table st1
where
st.client_ref_id = st1.client_ref_id;