Re: Buscar lista de campos en otra...

Lists: arpugpgsql-es-ayudapgsql-in-general
From: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Buscar lista de campos en otra...
Date: 2008-12-03 12:06:48
Message-ID: 4bf161230812030406l424de0bfp129ccf889e69988@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

Hola gente!,
Mi problema es el siguiente, tal vez es sencillo, pero yo no le
encuentro la vuelta y espero que puedan ayudarme:
Necesito verificar que toda una lista de campos del tipo varchar(6) se
encuentra en otra lista de campos completa, no al menos uno de ellos, ej:

codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:

select d.reqcurs in (select "codigoMat" from alumno2matcurs)

* Pero si encuentra al menos uno de los campos en reqcurs, me devuelve true
y corta; necesito que si todos los campos almacenados en reqcurs están en
"codigoMat" me devuelva true.

Ideas???

Desde ya muchas gracias.


From: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
To: arpug(at)postgresql(dot)org
Subject: Buscar lista de campos en otra...
Date: 2008-12-03 12:12:05
Message-ID: 4bf161230812030412y2525be38k7869d98677d9419e@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

Hola gente!,
Mi problema es el siguiente, tal vez es sencillo, pero yo no le
encuentro la vuelta y espero que puedan ayudarme:
Necesito verificar que toda una lista de campos del tipo varchar(6) se
encuentra en otra lista de campos completa, no al menos uno de ellos, ej:

codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:

select d.reqcurs in (select "codigoMat" from alumno2matcurs)

* Pero si encuentra al menos uno de los campos en reqcurs, me devuelve true
y corta; necesito que si todos los campos almacenados en reqcurs están en
"codigoMat" me devuelva true.

Ideas???

Desde ya muchas gracias.


From: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Buscar lista de campos en otra...
Date: 2008-12-03 12:21:20
Message-ID: 4bf161230812030421s2ee53263hc9a9eab5389cc84e@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

Hola!,
Mi problema es el siguiente, tal vez es sencillo, pero yo no le
encuentro la vuelta y espero que puedan ayudarme:
Necesito verificar que toda una lista de campos del tipo varchar(6) se
encuentra en otra lista de campos completa, no al menos uno de ellos, ej:

codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:

select d.reqcurs in (select "codigoMat" from alumno2matcurs)

* Pero si encuentra al menos uno de los campos en reqcurs, me devuelve true
y corta; necesito que si todos los campos almacenados en reqcurs están en
"codigoMat" me devuelva true.

Ideas???

Desde ya muchas gracias.


From: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
To: pgsql-in-general(at)postgresql(dot)org
Subject: Buscar lista de campos en otra...
Date: 2008-12-03 12:28:47
Message-ID: 4bf161230812030428x1be1cfb0rebee574b62e57da2@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

Hola!,
Mi problema es el siguiente, tal vez es sencillo, pero yo no le
encuentro la vuelta y espero que puedan ayudarme:
Necesito verificar que toda una lista de campos del tipo varchar(6) se
encuentra en otra lista de campos completa, no al menos uno de ellos, ej:

codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:

select d.reqcurs in (select "codigoMat" from alumno2matcurs)

* Pero si encuentra al menos uno de los campos en reqcurs, me devuelve true
y corta; necesito que si todos los campos almacenados en reqcurs están en
"codigoMat" me devuelva true.

Ideas???

Desde ya muchas gracias.


From: Javier Chávez B(dot) <jchavezb(at)gmail(dot)com>
To: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Buscar lista de campos en otra...
Date: 2008-12-03 12:32:35
Message-ID: ded64bba0812030432l41389919o5ab3abf5c8eda156@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

On Wed, Dec 3, 2008 at 12:21 PM, Mariano Cadeneau <mic416(at)gmail(dot)com> wrote:
> Hola!,
> Mi problema es el siguiente, tal vez es sencillo, pero yo no le
> encuentro la vuelta y espero que puedan ayudarme:
> Necesito verificar que toda una lista de campos del tipo varchar(6) se
> encuentra en otra lista de campos completa, no al menos uno de ellos, ej:
>
> codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:
>
> select d.reqcurs in (select "codigoMat" from alumno2matcurs)
>
> * Pero si encuentra al menos uno de los campos en reqcurs, me devuelve true
> y corta; necesito que si todos los campos almacenados en reqcurs están en
> "codigoMat" me devuelva true.
>
> Ideas???
>
> Desde ya muchas gracias.
>
Porque no usas un having ... ??? quiza con funciones de agregacion da
para tu problema ...
echale una vuelta a esto:

http://www.postgresql.org/docs/current/interactive/queries-table-expressions.html#QUERIES-GROUP

Por ej.

SELECT x, sum(y) FROM test1 GROUP BY x HAVING x < 'c';

en tu caso podria ser algo asi como

select d.reqcurs group by d.reqcurs having count (d.reqcurs) =
(select count(codigoMat)
from alumno2 matcurs)
ojo no probe ni nada solo se me ocurrio podrias experimentar ..
seguro en la documentacion sale algo mas tb.

Slds
J

--
Cumprimentos
jchavez
linux User #397972 on http://counter.li.org/


From: Javier Chávez B(dot) <jchavezb(at)gmail(dot)com>
To: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Buscar lista de campos en otra...
Date: 2008-12-03 12:39:06
Message-ID: ded64bba0812030439r6d0fe105sdd2782144bb1212@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

On Wed, Dec 3, 2008 at 12:06 PM, Mariano Cadeneau <mic416(at)gmail(dot)com> wrote:
> Hola gente!,
> Mi problema es el siguiente, tal vez es sencillo, pero yo no le
> encuentro la vuelta y espero que puedan ayudarme:
> Necesito verificar que toda una lista de campos del tipo varchar(6) se
> encuentra en otra lista de campos completa, no al menos uno de ellos, ej:
>
> codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:
>
> select d.reqcurs in (select "codigoMat" from alumno2matcurs)
>
> * Pero si encuentra al menos uno de los campos en reqcurs, me devuelve true
> y corta; necesito que si todos los campos almacenados en reqcurs están en
> "codigoMat" me devuelva true.
>
> Ideas???
>
> Desde ya muchas gracias.

Y no te habia respondido ya???

--
Cumprimentos
jchavez
linux User #397972 on http://counter.li.org/


From: Javier Chávez B(dot) <jchavezb(at)gmail(dot)com>
To: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Buscar lista de campos en otra...
Date: 2008-12-03 12:42:48
Message-ID: ded64bba0812030442n6aa2df04ledbaeffadc01a399@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

On Wed, Dec 3, 2008 at 12:40 PM, Mariano Cadeneau <mic416(at)gmail(dot)com> wrote:
> Muchas gracias Javier, ahí estoy probando, viendo si adapto lo que me
> dijiste dentro de un AND restringiendo un WHERE.
> Saludos!
>
>
> 2008/12/3 Javier Chávez B. <jchavezb(at)gmail(dot)com>
>>
>> On Wed, Dec 3, 2008 at 12:06 PM, Mariano Cadeneau <mic416(at)gmail(dot)com>
>> wrote:
>> > Hola gente!,
>> > Mi problema es el siguiente, tal vez es sencillo, pero yo no le
>> > encuentro la vuelta y espero que puedan ayudarme:
>> > Necesito verificar que toda una lista de campos del tipo varchar(6) se
>> > encuentra en otra lista de campos completa, no al menos uno de ellos,
>> > ej:
>> >
>> > codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:
>> >
>> > select d.reqcurs in (select "codigoMat" from alumno2matcurs)
>> >
>> > * Pero si encuentra al menos uno de los campos en reqcurs, me devuelve
>> > true
>> > y corta; necesito que si todos los campos almacenados en reqcurs están
>> > en
>> > "codigoMat" me devuelva true.
>> >
>> > Ideas???
>> >
>> > Desde ya muchas gracias.
>>
>> Y no te habia respondido ya???
>>
>> --
>> Cumprimentos
>> jchavez
>> linux User #397972 on http://counter.li.org/
>
>

Mariano :
Responde con copia a la lista porque puede haber gente que te entregue
u oriente una solucion mejor ....
slds.

J

--
Cumprimentos
jchavez
linux User #397972 on http://counter.li.org/


From: Javier Chávez B(dot) <jchavezb(at)gmail(dot)com>
To: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Buscar lista de campos en otra...
Date: 2008-12-03 12:43:40
Message-ID: ded64bba0812030443x4ed42d4ve4073b78fa03e4c3@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

On Wed, Dec 3, 2008 at 12:42 PM, Javier Chávez B. <jchavezb(at)gmail(dot)com> wrote:
> On Wed, Dec 3, 2008 at 12:40 PM, Mariano Cadeneau <mic416(at)gmail(dot)com> wrote:
>> Muchas gracias Javier, ahí estoy probando, viendo si adapto lo que me
>> dijiste dentro de un AND restringiendo un WHERE.
>> Saludos!
>>
>>
>> 2008/12/3 Javier Chávez B. <jchavezb(at)gmail(dot)com>
>>>
>>> On Wed, Dec 3, 2008 at 12:06 PM, Mariano Cadeneau <mic416(at)gmail(dot)com>
>>> wrote:
>>> > Hola gente!,
>>> > Mi problema es el siguiente, tal vez es sencillo, pero yo no le
>>> > encuentro la vuelta y espero que puedan ayudarme:
>>> > Necesito verificar que toda una lista de campos del tipo varchar(6) se
>>> > encuentra en otra lista de campos completa, no al menos uno de ellos,
>>> > ej:
>>> >
>>> > codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:
>>> >
>>> > select d.reqcurs in (select "codigoMat" from alumno2matcurs)
>>> >
>>> > * Pero si encuentra al menos uno de los campos en reqcurs, me devuelve
>>> > true
>>> > y corta; necesito que si todos los campos almacenados en reqcurs están
>>> > en
>>> > "codigoMat" me devuelva true.
>>> >
>>> > Ideas???
>>> >
>>> > Desde ya muchas gracias.
>>>
>>> Y no te habia respondido ya???
>>>
>>> --
>>> Cumprimentos
>>> jchavez
>>> linux User #397972 on http://counter.li.org/
>>
>>
>
> Mariano :
> Responde con copia a la lista porque puede haber gente que te entregue
> u oriente una solucion mejor ....
> slds.
>
> J
>
>
> --
> Cumprimentos
> jchavez
> linux User #397972 on http://counter.li.org/
>

Y no envies dos correos con tus dudas ... :0)

Slds.

J.

--
Cumprimentos
jchavez
linux User #397972 on http://counter.li.org/


From: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
To: Javier Chávez B(dot) <jchavezb(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Buscar lista de campos en otra...
Date: 2008-12-03 12:45:43
Message-ID: 4bf161230812030445u41bc1c18k69d313871a5d967e@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

Jaja, gracias. Es que soy nuevo en esto, el primero lo envié y me lo rebotó
porque todavía no estaba logueado a la lista y lo mandé de nuevo pensando
que lo había perdido en batalla.
Saludos!

2008/12/3 Javier Chávez B. <jchavezb(at)gmail(dot)com>

> On Wed, Dec 3, 2008 at 12:42 PM, Javier Chávez B. <jchavezb(at)gmail(dot)com>
> wrote:
> > On Wed, Dec 3, 2008 at 12:40 PM, Mariano Cadeneau <mic416(at)gmail(dot)com>
> wrote:
> >> Muchas gracias Javier, ahí estoy probando, viendo si adapto lo que me
> >> dijiste dentro de un AND restringiendo un WHERE.
> >> Saludos!
> >>
> >>
> >> 2008/12/3 Javier Chávez B. <jchavezb(at)gmail(dot)com>
> >>>
> >>> On Wed, Dec 3, 2008 at 12:06 PM, Mariano Cadeneau <mic416(at)gmail(dot)com>
> >>> wrote:
> >>> > Hola gente!,
> >>> > Mi problema es el siguiente, tal vez es sencillo, pero yo no le
> >>> > encuentro la vuelta y espero que puedan ayudarme:
> >>> > Necesito verificar que toda una lista de campos del tipo varchar(6)
> se
> >>> > encuentra en otra lista de campos completa, no al menos uno de ellos,
> >>> > ej:
> >>> >
> >>> > codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:
> >>> >
> >>> > select d.reqcurs in (select "codigoMat" from alumno2matcurs)
> >>> >
> >>> > * Pero si encuentra al menos uno de los campos en reqcurs, me
> devuelve
> >>> > true
> >>> > y corta; necesito que si todos los campos almacenados en reqcurs
> están
> >>> > en
> >>> > "codigoMat" me devuelva true.
> >>> >
> >>> > Ideas???
> >>> >
> >>> > Desde ya muchas gracias.
> >>>
> >>> Y no te habia respondido ya???
> >>>
> >>> --
> >>> Cumprimentos
> >>> jchavez
> >>> linux User #397972 on http://counter.li.org/
> >>
> >>
> >
> > Mariano :
> > Responde con copia a la lista porque puede haber gente que te entregue
> > u oriente una solucion mejor ....
> > slds.
> >
> > J
> >
> >
> > --
> > Cumprimentos
> > jchavez
> > linux User #397972 on http://counter.li.org/
> >
>
> Y no envies dos correos con tus dudas ... :0)
>
> Slds.
>
> J.
>
> --
> Cumprimentos
> jchavez
> linux User #397972 on http://counter.li.org/
>


From: Javier Chávez B(dot) <jchavezb(at)gmail(dot)com>
To: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Buscar lista de campos en otra...
Date: 2008-12-03 12:54:58
Message-ID: ded64bba0812030454u558e9d4ey1ba56ed1a993df0f@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

On Wed, Dec 3, 2008 at 12:45 PM, Mariano Cadeneau <mic416(at)gmail(dot)com> wrote:
> Jaja, gracias. Es que soy nuevo en esto, el primero lo envié y me lo rebotó
> porque todavía no estaba logueado a la lista y lo mandé de nuevo pensando
> que lo había perdido en batalla.
> Saludos!

no problem es solo una sugerencia 0) ... y como eres nuevo evita Top - Post :0)

Slds.

J

--
Cumprimentos
jchavez
linux User #397972 on http://counter.li.org/


From: "Mariano Cadeneau" <mic416(at)gmail(dot)com>
To: Javier Chávez B(dot) <jchavezb(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Buscar lista de campos en otra...
Date: 2008-12-03 13:19:18
Message-ID: 4bf161230812030519o72eccb30k8834375d4eb8c88b@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

Voy a ser más gráfico, es un ejercicio que busca qué materias puede cursar
un alumno...

*Tengo una tabla *reqmat* que tiene codigos de materia, con los codigos de
materias que tienen que estar cursadas y aprobadas para poder cursarla:

*Tabla reqmat: (tomemos como ejemplo el código 10)
*codigo reqcurs reqaprob*
* 10 01
10 02

* Tengo otra tabla *alumno2matcurs* que contiene las materias cursadas por
el alumno:

*Tabla alumno2matcurs:*
codigoMat
01
02
05
08

Entonces, necesitaría saber si reqmat.reqcurs digamos para el código '10'
(según condiciones del docente es un varchar) se encuentra en su totalidad
en alumno2matcurs.codigoMat, el que tengan igual count de elementos no
sirve, pues el alumno puede tener más materias cursadas que las que figuran
en reqmat.reqcurs.
Ideas?.
Gracias y saludos!.

2008/12/3 Mariano Cadeneau <mic416(at)gmail(dot)com>

> Jaja, gracias. Es que soy nuevo en esto, el primero lo envié y me lo rebotó
> porque todavía no estaba logueado a la lista y lo mandé de nuevo pensando
> que lo había perdido en batalla.
>
> Saludos!
>
> 2008/12/3 Javier Chávez B. <jchavezb(at)gmail(dot)com>
>
>> On Wed, Dec 3, 2008 at 12:42 PM, Javier Chávez B. <jchavezb(at)gmail(dot)com>
>> wrote:
>> > On Wed, Dec 3, 2008 at 12:40 PM, Mariano Cadeneau <mic416(at)gmail(dot)com>
>> wrote:
>> >> Muchas gracias Javier, ahí estoy probando, viendo si adapto lo que me
>> >> dijiste dentro de un AND restringiendo un WHERE.
>> >> Saludos!
>> >>
>> >>
>> >> 2008/12/3 Javier Chávez B. <jchavezb(at)gmail(dot)com>
>> >>>
>> >>> On Wed, Dec 3, 2008 at 12:06 PM, Mariano Cadeneau <mic416(at)gmail(dot)com>
>> >>> wrote:
>> >>> > Hola gente!,
>> >>> > Mi problema es el siguiente, tal vez es sencillo, pero yo no le
>> >>> > encuentro la vuelta y espero que puedan ayudarme:
>> >>> > Necesito verificar que toda una lista de campos del tipo varchar(6)
>> se
>> >>> > encuentra en otra lista de campos completa, no al menos uno de
>> ellos,
>> >>> > ej:
>> >>> >
>> >>> > codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:
>> >>> >
>> >>> > select d.reqcurs in (select "codigoMat" from alumno2matcurs)
>> >>> >
>> >>> > * Pero si encuentra al menos uno de los campos en reqcurs, me
>> devuelve
>> >>> > true
>> >>> > y corta; necesito que si todos los campos almacenados en reqcurs
>> están
>> >>> > en
>> >>> > "codigoMat" me devuelva true.
>> >>> >
>> >>> > Ideas???
>> >>> >
>> >>> > Desde ya muchas gracias.
>> >>>
>> >>> Y no te habia respondido ya???
>> >>>
>> >>> --
>> >>> Cumprimentos
>> >>> jchavez
>> >>> linux User #397972 on http://counter.li.org/
>> >>
>> >>
>> >
>> > Mariano :
>> > Responde con copia a la lista porque puede haber gente que te entregue
>> > u oriente una solucion mejor ....
>> > slds.
>> >
>> > J
>> >
>> >
>> > --
>> > Cumprimentos
>> > jchavez
>> > linux User #397972 on http://counter.li.org/
>> >
>>
>> Y no envies dos correos con tus dudas ... :0)
>>
>> Slds.
>>
>> J.
>>
>> --
>> Cumprimentos
>> jchavez
>> linux User #397972 on http://counter.li.org/
>>
>
>


From: "Mariano Reingart" <mariano(at)nsis(dot)com(dot)ar>
To: <arpug(at)postgresql(dot)org>
Subject: Re: Buscar lista de campos en otra...
Date: 2008-12-09 13:04:49
Message-ID: 0844FB40F23D4CCE9291A859A98412E8@pc1
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: arpug pgsql-es-ayuda pgsql-in-general

---- Mensaje original ----
De: Mariano Cadeneau
Para: arpug(at)postgresql(dot)org
Enviado: Miércoles, 03 de Diciembre de 2008 10:12
Asunto: [arpug] Buscar lista de campos en otra...

> Hola gente!,
>
> Mi problema es el siguiente, tal vez es sencillo, pero yo no le
> encuentro la vuelta y espero que puedan ayudarme:
> Necesito verificar que toda una lista de campos del tipo varchar(6)
> se encuentra en otra lista de campos completa, no al menos uno de
> ellos, ej:
>
> codigo, codigoMat y reqcurs son: varchar(6), yo hice lo siguiente:
>
> select d.reqcurs in (select "codigoMat" from alumno2matcurs)
>
> * Pero si encuentra al menos uno de los campos en reqcurs, me
> devuelve true y corta; necesito que si todos los campos almacenados
> en reqcurs están en "codigoMat" me devuelva true.
>
> Ideas???

No entiendo mucho tu estructura de datos, pero se me ocurriria que usando un
count podrias sacar la cantidad de registros que coinciden y comparar para
ver si estan todos.

Quizas tendrias que postear a pgsql-ayuda-es que es para temas mas técnicos
como este.

Saludos
Mariano