Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/07/2017, 22:11
Avatar de ..::MaRcOs::..
..::MaRcOs::..
 
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 11 meses
Puntos: 3
Listar tabla ordenada dependiendo a los datos de otra tabla

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