Substitua
WHERE
cláusula com HAVING
, assim:SELECT o.ID , count(p.CAT)
FROM Orders o
INNER JOIN Products p ON o.P_ID = p.P_ID
GROUP BY o.ID
HAVING count(p.CAT) > 3;
HAVING
é semelhante a WHERE
, ou seja, ambos são usados para filtrar os registros resultantes, mas HAVING
é usado para filtrar dados agregados (quando GROUP BY
é usado).