Редактировать Я бы скорее четко изложил свою проблему, с которой я столкнулся, чем предполагал подход.Может быть самое простое решение моей проблемы.
Мне нужно выбрать записи, соединив две разные таблицы на основе результатов из другой таблицы.И я должен использовать разные объединения в зависимости от результата из первой таблицы.
Если конкретная запись присутствует в первой таблице, у меня есть два варианта использования внутреннего соединения с первой таблицей, тогда как если его нет, то мне нужно оставить соединение.
bool recordPresent = select exists (select * from firstTable where access_id = 13) as access
if (recordPresent)
results = select * from secondTable s left join firstTable f on f.access_id = s.access_id where f.access_id is null order by access_id
else
results = select * from secondTable s inner join firstTable f on f.access_id = s.access_id