Muchas gracias por tu respuesta Heimish2000, pero resulta que me han exigido mostrar los datos de otra forma y eso no voy a poder conseguirlo con una sola consulta. El nuevo requerimiento es este:
Código SQL:
Ver originaltipos | Público | Privado
------------------------------------------
tipo1 | COUNT(*)| COUNT(*)
-------------------------------------------
tipo2 | COUNT(*)| COUNT(*)
------------------------------------------
tipo3 | COUNT(*)| COUNT(*)
-------------------------------------------
tipo4 | COUNT(*)| COUNT(*)
---------------------------------------------
tipo5 | COUNT(*)| COUNT(*)
-----------------------------------------------
tipo6 | COUNT(*)| COUNT(*)
Así que lo que he hecho es, en primer lugar, listar los tipos y mientras los voy mostrando con un while en php coloco en el primer td el tipo, para el segundo td hago otra consulta y cuento el número de servicios de ese tipo que sean públicos y para el tercer td repito la consulta anterior cambiando el id_caracter por 2.
Es la única solución que se me ocurre por el momento.
Pero ya por tener algún conocimiento más sobre sql(olvidé el uso de left y right join), habría alguna consulta para obtener los resultados en este orden?
Saludos y gracias de nuevo.