Вы можете использовать exists
:
select t.id_asg
from t
where t.asig_date = '20200101' and
exists (select 1
from t t2
where t2.id_asg = t.id_asg and t2.asig_date = '20200501'
);
Если вы хотите id_asg
значений, где наименьшее значение равно 20200101, а наибольшее 20200501, используйте агрегирование:
select t.id_asg
from t
group by t.id_asg
having min(t.asig_date) = '20200101' and
max(t.asig_date) = '20200501' ;