Hola amigos busco realizar una consulta que me muestre un listado de empresas y que se ordenen por las que mejor calificaciones tienen. Ya he logrado algo pero necesito una mano para perfeccionarla debido a que si la empresa aun no tiene calificación, no me la muestra.
empresas (id, nombre, categoria, activa, abierta)
calificaciones (id, empresa, puntaje)
la consulta que tengo es la siguiente:
SELECT empresas.nombre, SUM(calificaciones.puntaje)/COUNT(calificaciones.puntaje) as rating FROM `empresas`, `calificaciones` where empresas.id = calificaciones.empresa and empresas.activa = '1' and empresas.categoria = 'food' GROUP by empresas.id order by empresas.abierto DESC, rating DESC
la consulta arroja por ejemplo:
empresax 4,5
empresay 4,0
sin mostrar la empresa z que puede no tener calificaciones y lo que deseo es que me muestre algo como:
empresax 4,5
empresay 4,0
empresaz ---
les agradezco cualquier idea