combining 2 sql queries based on different conditions
That's a simple OR condition:

select *
from person
where (state = 'ALIVE' and d1 &lt;= DATE '2015-08-08')
   or (state = 'DEAD' and d2 &gt; DATE '2015-08-08');


The parentheses combining the AND operators are required, otherwise you'd get a wrong result.