Re: contar distintos con ventana?

From: Gerardo Herzig <gherzig(at)fmed(dot)uba(dot)ar>
To: "Guillermo E(dot) Villanueva" <guillermovil(at)gmail(dot)com>
Cc: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: contar distintos con ventana?
Date: 2014-08-29 16:35:53
Message-ID: 1475307228.7069.1409330153693.JavaMail.root@fmed.uba.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

No veo que "ventana" aplicar....Mas bien veo que hay que recorrer el resultado secuencialmente, para hacer un count (distinct).
No veo necesidad de repetir la consulta, pero si de recorrer los datos resultantes, tal vez con una subconsulta:

test=# with consulta as (select * from test)
select *, (select count(distinct id) from consulta)
from consulta;

id | t | count
----+-----+-------
1 | 0.3 | 6
1 | 0.5 | 6
2 | 0.1 | 6
2 | 0.9 | 6
3 | 0.3 | 6
1 | 0.5 | 6
4 | 0.1 | 6
5 | 0.9 | 6
8 | 0.3 | 6

Si tu "consulta" original no devuelve demasiados registros, no veo que vaya a generar excesivo overhead.

HTH
Gerardo
----- Mensaje original -----
> De: "Guillermo E. Villanueva" <guillermovil(at)gmail(dot)com>
> Para: "pgsql-es-ayuda" <pgsql-es-ayuda(at)postgresql(dot)org>
> Enviados: Jueves, 28 de Agosto 2014 20:01:18
> Asunto: [pgsql-es-ayuda] contar distintos con ventana?
>
>
> Hola amigos, con una tabla mas o menos como:
> id t
> ---+---
> 1 0.3
> 1 0.5
> 2 1.1
> 2 1.2
> 2 1.1
> 3 0.5
> 3 0.6
> Existe alguna forma de función de ventana que me permita obtener la
> cantidad de ids diferentes listadas? En este caso e (tres)
>
> id t cant
> ---+---+----
> 1 0.3 3
> 1 0.5 3
> 2 1.1 3
> 2 1.2 3
> 2 1.1 3
> 3 0.5 3
> 3 0.6 3 La consulta que devuelve esto es bastante compleja y no me
> gustaría repetirla solo para contar valores diferentes.
> Desde ya muchas gracias!
>
>
>
> Guillermo Villanueva
>

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripcin:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Gerardo Herzig 2014-08-29 16:48:29 Re: Restricción CHECK: evitar que exista ID de tabla A en tabla B
Previous Message Pedro PG 2014-08-29 14:21:00 Restricción CHECK: evitar que exista ID de tabla A en tabla B