Skip site navigation (1) Skip section navigation (2)

Funciones ventana

From: Jorge Tornero <jorge(dot)tornero(at)cd(dot)ieo(dot)es>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Funciones ventana
Date: 2011-04-18 06:46:55
Message-ID: 4DABDE5F.1000709@cd.ieo.es (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Hola a todos,

experimentando con las funciones ventana me encuentro con lo siguiente:

Imaginemos una tabla BIO tal que:

marea int
lance int
fraccion int
talla int

la cosa es que si yo hago:

select marea,lance,fraccion,avg(talla) over(partition by
marea,lance,fraccion) from bio;

me saca los resultados correctamente, pero si yo quisiera escoger
aquellos con media>100, por ejemplo, se me ocurren dos cosas:

select marea,lance,fraccion,avg(talla) over(partition by
marea,lance,fraccion) from bio group by marea, lance,fraccion,talla
having avg(talla)>100;

En cuyo caso me da las medias erróneas (y además, me obliga a introducir
talla en la clausula group by, lo que me parece extraño)

O bien intento algo como:

select marea,lance,fraccion,avg(talla) over(partition by
marea,lance,fraccion) as media from bio where media>100;

Y en este caso se queja de que no existe la columna "media".

¿Alguna idea sobre cómo proceder?

Saludos y gracias

Jorge Tornero


-- 
Jorge Tornero

Instituto Español de Oceanografía
Centro Oceanográfico de Cádiz
Puerto Pesquero - Muelle de Levante, s/n
11006 Cadiz - Spain
Tel. +34 956294189 Fax 956294232
www.ieo.es


In response to

Responses

pgsql-es-ayuda by date

Next:From: Daniel L.S.Date: 2011-04-18 07:26:27
Subject: Herramienta CASE
Previous:From: Jaime CasanovaDate: 2011-04-16 18:44:35
Subject: Re: Commit difiere en muchos segundos

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group