För att göra detta behöver du en yttre sammanfogning. Förresten, sättet du skriver din fråga med en implicit koppling är föråldrat och rekommenderas inte längre. Användning av nyckelordet JOIN rekommenderas. Detta gör det också lättare att ändra en inre fog till en yttre fog.
FROM categories AS sc
LEFT JOIN products AS s
ON s.ownerid=sc.id
För att returnera 0 istället för NULL använd IFNULL(..., 0) . Hela frågan blir:
SELECT
sc.*,
IFNULL(MIN(s.price), 0) AS minp,
IFNULL(MAX(s.price), 0) AS maxp
FROM categories AS sc
LEFT JOIN products AS s
ON s.ownerid = sc.id
GROUP BY sc.id
Du kanske också vill överväga om det skulle vara bättre att returnera standardvärdet NULL istället för 0 för kategorier som inte har några produkter.