修改 我宁愿明确地陈述我要面对的问题,而不是采用这种方法。解决我的问题可能是最简单的方法。
我需要根据另一个表的结果通过连接两个不同的表来选择记录。而且我必须根据第一个表的结果使用不同的联接。
如果第一个表中存在特定记录,则我在第一个表中有两个使用内部联接,而如果不存在,则必须保留联接。
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