By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0. 3601600 fiddles created (48015 in the last week).
create table personas (idpersona int, nombrepersona varchar(255));
create table asistencias(idpersona int, fecha date);
insert into personas (idpersona, nombrepersona) values (1, 'juan'), (2, 'pedro');
insert into asistencias(idpersona, fecha) values (1, '2021-08-01'), (2, '2021-08-03'), (1, '2021-08-03');
✓
✓
✓
✓
✓
✓
✓
✓
hidden batch(es)
select p.idpersona,
p.nombrepersona,
f.fecha
from (select p1.idpersona,
a1.fecha
from (select distinct fecha from asistencias) a1
cross join personas p1
) f
left join asistencias a
on f.fecha = a.fecha
and a.idpersona = f.idpersona
inner join personas p
on p.idpersona = f.idpersona
where a.fecha is null