Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

Count (*) Problema con x<0

Estas en el tema de Count (*) Problema con x<0 en el foro de PostgreSQL en Foros del Web. Saludos a todos, espero me puedan ayudar. Tengo una tabla "empresas" la cual alamacena los datos de una empresa y una tabla "vehiculos_empresas" la cual ...
  #1 (permalink)  
Antiguo 04/09/2008, 13:15
 
Fecha de Ingreso: septiembre-2008
Mensajes: 2
Antigüedad: 12 años, 3 meses
Puntos: 0
Count (*) Problema con x<0

Saludos a todos, espero me puedan ayudar. Tengo una tabla "empresas" la cual alamacena los datos de una empresa y una tabla "vehiculos_empresas" la cual asocia el id de un vehiculo con el id de la empresa "id_emp". Necesito generar un reporte el cual mustre la cantidad de vehiculos por empresa. Pude contar los vehiculos por empresas perfectamente pero aquellas empresas las cuales no tienen vehiculos asociados no se muestran Quisiera que apareciera el registro total_vehiculos = 0. Tengo entendido que la funcion COUNT (*) no devuelve valores x<0. He intentado usar

coalesce(sum(e.id_emp), 0) AS total_vehiculos, y tambien
coalesce(count(e.id_emp), 0) AS total_vehiculos,

este es mi query espero puedan ayudarme... Saludos...

SELECT e.id_emp,
e.nom_emp,
e.log_emp,
to_char(e.fec_reg, 'DD/MM/YYYY HH:MI AM') AS fec_reg,
ev.id_emp, coalesce (COUNT (*),0) AS total_vehiculos,
CASE WHEN e.est_emp=0 THEN 'Suspendida'
WHEN e.est_emp=1 THEN 'Activa'
WHEN e.est_emp=2 THEN 'Demo' END AS estado
FROM empresas e
JOIN empresas_vehiculos ev ON e.id_emp=ev.id_emp
GROUP BY e.id_emp, e.nom_emp,e.log_emp,e.fec_reg,ev.id_emp,e.est_emp
ORDER BY e.nom_emp

:neuroti co
  #2 (permalink)  
Antiguo 04/09/2008, 13:20
 
Fecha de Ingreso: septiembre-2008
Mensajes: 2
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Count (*) Problema con x<0

Ahhh tambien he probado haciendo left, inner,etc... join
  #3 (permalink)  
Antiguo 05/09/2008, 01:16
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 13 años, 10 meses
Puntos: 13
Respuesta: Count (*) Problema con x<0

Cita:
Iniciado por jgmusso Ver Mensaje
Ahhh tambien he probado haciendo left, inner,etc... join
Lo siento pero entonces has probado mal.
Deberias de poner que has probado, no solo decirlo.

Ahi la llevas:
Código:
SELECT 	e.id_emp,
		-- resto de campos
		COUNT (ev.*) AS total_vehiculos
FROM 	empresas e
		LEFT JOIN empresas_vehiculos ev 	ON e.id_emp=ev.id_emp
GROUP BY e.id_emp, -- resto de campos
Salu2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:23.