From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Javier Estévez CIFA Córdoba <javier(dot)estevez(dot)ext(at)juntadeandalucia(dot)es> |
Cc: | Jaime Casanova <systemguards(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: COUNT |
Date: | 2006-03-01 13:46:41 |
Message-ID: | 20060301134641.GA4800@surnet.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Javier Estévez CIFA Córdoba escribió:
> Por fin he resuelto el problema del column reference "ambiguous".
>
> Esta la consulta correcta:
>
> SELECT b."IdProvincia", b."IdEstacion", count(*)
> FROM ria_day a LEFT OUTER JOIN ria_mes_avg_std b
> ON (a."IdProvincia" = b."IdProvincia" AND
> a."IdEstacion" = b."IdEstacion" AND
> a.mes = b.mes AND
> a."TempMax" NOT BETWEEN b."TxAVGmes"-2.0*"TxSTDmes" AND
> b."TxAVGmes"+2.0*"TxSTDmes")
> GROUP by b."IdProvincia", b."IdEstacion"
> ORDER by b."IdProvincia", int2(b."IdEstacion")
>
> El problema ahora es que sigue sin sacarme los count(*) con valor 0. Es
> decir, tengo el mismo problema que cuando utilizaba JOIN (no LEFT JOIN) y
> WHERE.
>
> Lo que si me hace es que me saca al final de todo un registro sólo con
> count(*) y con el valor de todos los valores que están dentro del BETWEEN.
Quizas el left join esta mal planteado :-) A lo mejor las tablas estan
puestas al reves, o quizas simplemente no es ese el left join que debes
hacer sino que te falta un listado completo de todas las provincias y
estaciones.
Di, en la tabla ria_day aparecen todas las estaciones y provincias? O
solo aquellas que tienen datos? Y en la tabla ria_mes_avg_std?
--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.
From | Date | Subject | |
---|---|---|---|
Next Message | Mario Gonzalez | 2006-03-01 13:47:58 | Re: - - ¿ Cual Sistema Operativo ? |
Previous Message | Figo's | 2006-03-01 13:41:11 | - - ¿ Cual Sistema Operativo ? |