Parece que quieres una left join
:
select a.id, b.idcategory, b.value
from a left join
b
on b.id = a.id and b.idcategory = 1;
El value
la columna tiene NULL
en lugar de 'no value'
. Tu puedes reemplácelo, pero NULL
por lo general sirve para ese propósito.