Existen dos formas de manejar la cosa:
1. La más tosca: Agregar una categoróa cero (0) que tenga como descripción "NO CATEGORIZADO".
2. Resolverlo no con INNER JOIN sino con LEFT JOIN:
Código sql:
Ver originalSELECT p.*, IFNULL(c.name,'Uncategorized') name
FROM productos p LEFT JOIN categorias c ON c.id = p.category_id
WHERE a.user_id='Una Variable'
ORDER BY p.created DESC ";
LEFT JOIN devuelve todos los valores validos de la primera tabla (izquierda), incluyendo NULL donde no existan coincidencias. Usando IFNULL() se puede hacer que NAME tenga un contenido alternativo en aquellos casos en que el producto tiene categoría 0.