Вы можете использовать cross apply
вместо join
:
select r.DATE_, r.SAL
from RES r cross apply
(select top 1 b.*
from BAD b
where r.SAL = b.SAL
order by b.bad_id asc
) b
where r.DATE_ = b.DATE_;
Тем не менее, я думаю, что логика более четко написана как:
select r.DATE_, r.SAL
from RES r
where r.DATE_ = (select top (1) b.DATE_
from BAD b
where r.SAL = b.SAL
order by b.bad_id asc
) ;