Ver Mensaje Individual
  #3 (permalink)  
Antiguo 26/08/2010, 10:22
Avatar de bLEx
bLEx
 
Fecha de Ingreso: mayo-2008
Ubicación: Villa Alemana, Chile
Mensajes: 181
Antigüedad: 16 años, 8 meses
Puntos: 5
Respuesta: Consulta SQL no muestra cuando no tiene valores...

huesos. gracias por la respuesta... aun así logre solucionarlo de otra manera.
Dentro de los CASE coloque todas las condiciones necesarias y en el WHERE las condiciones minimas para que existan los vinculos entre las tablas.

Código:
Select 
count(
	CASE WHEN 
		fn.id_tipooperacion=8 AND 
		fn.id_tiempo BETWEEN '2009-01-01' AND '2010-01-01' AND 
		fn.id_tiempo= dt.fecha AND
		fn.id_comuna_proyecto=dc.id_comuna AND 
		dc.id_ciudad=dci.id_ciudad AND 
		dci.region='RM' AND 
		dc.glosa_comuna='la florida' AND 
		fn.id_tipoproducto=dtp.id_tipoproducto	AND 
		dtp.tipo in ('departamento') AND 
		dtp.modelo in ('2D 1B') 
	THEN 1 END)AS unidades, 
	
ROUND(SUM(
	CASE WHEN 
		fn.id_tipooperacion=8 AND
		fn.id_tiempo BETWEEN '2009-01-01' AND '2010-01-01' AND 
		fn.id_tiempo= dt.fecha AND
		fn.id_comuna_proyecto=dc.id_comuna AND 
		dc.id_ciudad=dci.id_ciudad AND 
		dci.region='RM' AND 
		dc.glosa_comuna='la florida' AND 
		fn.id_tipoproducto=dtp.id_tipoproducto	AND 
		dtp.tipo in ('departamento') AND 
		dtp.modelo in ('2D 1B') 
	THEN (fn.total_preciopromesa_uf)/1000 ELSE 0 END) ) AS VENTABRUTA ,
dt.periodo_corto, dci.region,fn.id_tiempo
FROM fact_negocios as fn, dim_tiempo as dt,dim_comuna as dc,dim_ciudad as dci, dim_tipoproducto as dtp
WHERE
	fn.id_tiempo= dt.fecha AND
	fn.id_comuna_proyecto=dc.id_comuna AND 
	dc.id_ciudad=dci.id_ciudad AND 
	fn.id_tipoproducto=dtp.id_tipoproducto AND 
	fn.id_tiempo BETWEEN '2009-01-01' AND '2010-01-01' AND 
	dci.region='RM'
GROUP BY 
dt.anio,
dt.mes,
dt.periodo_corto,
dci.region,
fn.id_tiempo
ORDER BY 
dt.anio,
dt.mes,
dt.periodo_corto
Gracias, por la ayuda.
Saludos