Re: Filtro de Consultas

From: Juan Martínez <jeugenio(at)umcervantes(dot)cl>
To: Mario Gonzalez <gonzalemario(at)gmail(dot)com>
Cc: Postgres Español <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Filtro de Consultas
Date: 2006-06-23 19:21:56
Message-ID: 1151090516.4022.12.camel@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El vie, 23-06-2006 a las 18:59 -0400, Mario Gonzalez escribió:
> Holas, creo que llevo mucho tiempo resolviendo tratando de resolver
> esto : ) tengo un pequeño gran problema que lo puedo reproducir a una
> minima escala asi:
>
> test=> CREATE TABLE uno(a int, b int);
> CREATE TABLE
> test=> INSERT INTO uno VALUES (1, 2);
> INSERT 0 1
> test=> INSERT INTO uno VALUES (3, 4);
> INSERT 0 1
> test=> INSERT INTO uno VALUES (3, 5);
> INSERT 0 1
> test=> INSERT INTO uno VALUES (5, 6);
> INSERT 0 1
> test=> SELECT * from uno ;
> a | b
> ---+---
> 1 | 2
> 3 | 4
> 3 | 5
> 5 | 6
> 7 | 8
> 7 | 9
> 7 | 10
> (7 filas)
>
> con eso, como puedo hacer para devolver los que solo estan una vez
> en la tabla? O sea asi
> a | b
> ---+---
> 1 | 2
> 5 | 6

A mi me funciona!
No se si es lo mas optimo, pero lo pongo por si te sirve

Ojo que solo evalua que un valor de 'a' sea unico (segun el ejemplo que
pusiste). Si 'a' y 'b' como tupla tienen que ser unicos, la cosa se
complica un poco, pero creo que pasa por convertirlos en un solo string.

SELECT a_.a,uno.b
FROM (SELECT a,count(a) AS "cont_a"
FROM uno
GROUP BY a) AS a_
INNER JOIN uno ON uno.a=a_.a
WHERE cont_a=1;

--
Juan Martínez
Depto. Inf.
UMC

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message deepthroat 2006-06-23 19:52:53 capturar exception pruducto de constraint
Previous Message Yaremi Paz 2006-06-23 19:15:49 RE: Simple consulta SELECT