Dette er et hul-og-ø-problem. Du vil have starten på hver ø, som du kan identificere ved at sammenligne status på den aktuelle række med status på den "forrige" post.
Vinduesfunktioner er nyttige til dette:
select t.*
from (
select t.*, lag(status) over(partition by personID order by unixtime) lag_status
from mytable t
) t
where lag_status is null or status <> lag_status