Quando devo affrontare il problema di restituire sempre esattamente una riga, uso spesso l'aggregazione. Quanto segue restituirà NULL
se non c'è corrispondenza:
select max(employee_id)
from employee
where name = 'John_Doe';
Quanto segue restituisce 0:
select coalesce(max(employee_id), 0)
from employee
where name = 'John_Doe';