From: | Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec> |
---|---|
To: | Carlos Bazán <infobaz(at)vtr(dot)net> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
Subject: | Re: Uso de arrays en comparaciones |
Date: | 2010-02-10 17:43:55 |
Message-ID: | 3073cc9b1002100943s40df2fb5ge657fe129358747@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
2010/2/9 Carlos Bazán <infobaz(at)vtr(dot)net>:
>>
>> Yo creo que necesitas ANY en vez de ALL.
>
> Ok, igual sirve. Para verificar que esten todos entonces voy a modificar el
> query para que me retorne la cantidad de registros que figuran en el arreglo,
> para despues comparar el valor con el valor correspondiente al tamaño del
> arreglo.
>
no entendi ese cambio que vas a hacer pero me parece que tu consulta
esta mal planteada...
segun entendi aqui:
http://archives.postgresql.org/pgsql-es-ayuda/2010-02/msg00160.php lo
que quieres lograr es saber si todos los datos del arreglo estan en la
tabla...
pero una consulta que retorne datos de la tabla no te va a mostrar los
que "no" estan en la tabla, por ejemplo:
"""
select * from mi_tabla where numero = all ('{100, 200, 300, 400}')
"""
te puede decir que "si" hay en la tabla de ese arreglo, pero no te
puede decir que "no" hay...
mas bien se me ocurre que lo que necesitas hacer es tratar ese arreglo
como si fuera una tabla... en la version 8.4 existe la funcion
unnest() que serviria para eso, en 8.3 solo se me ocurre meter todo en
una tabla y luego sacar datos de esa nueva tabla where not exists
(select 1 from tabla_original where numero = tabla_arreglo.numero)
--
Atentamente,
Jaime Casanova
Soporte y capacitación de PostgreSQL
Asesoría y desarrollo de sistemas
Guayaquil - Ecuador
Cel. +59387171157
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2010-02-10 18:39:53 | Re: Uso de arrays en comparaciones |
Previous Message | Edwin Quijada | 2010-02-10 17:01:57 | RE: [pgsql-es-ayuda] Instalación postgresql-8.1 en Ubuntu 9.10 |