Możesz nadać zapytaniu nazwę lub alias za pomocą klauzuli CTE (Common Table Expressions) alias WITH alias Oracle jako Subquery Factoring:
WITH abc as (select client_ref_id, request from some_table where message_type = 1)
select *
from abc
inner join
(select client_ref_id, response from some_table where message_type = 2) defg
on abc.client_ref_id = def.client_ref_id;