Re: Buscar datos en detalle

From: Hellmuth Vargas <hivs77(at)gmail(dot)com>
To: Carlos Perez <carlos(dot)perez(at)syswarp(dot)com(dot)ar>
Cc: José Fermín Francisco Ferreras <josefermin54(at)hotmail(dot)com>, Horacio Miranda <hmiranda(at)gmail(dot)com>, Lista Postgres ES <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Buscar datos en detalle
Date: 2015-09-13 13:27:29
Message-ID: CAN3Qy4pP2Jbpf13wyUL6RVB9Ys-Mb+s_9Dg_RxrzYTSMBQ30eg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola lista

Me falto un group by :-P

Select *

from cabecera x inner join detalles y on
(x.numero_formulario=y.numero_formulario) join (
Select y.numero_formulario from detalles as y group by y.numero_formulario
Except
Select y.numero_formulario from detalles as y where y.codigo_producto not
in (1) group by y.numero_formulario ) as z on y.numero_formulario =
z.numero_formulario
El sept. 13, 2015 8:23 AM, "Hellmuth Vargas" <hivs77(at)gmail(dot)com> escribió:

> Buenos días Lista
>
> Verificar con esta
>
> Select *
>
> from cabecera x inner join detalles y on
> (x.numero_formulario=y.numero_formulario) join (
> Select y.numero_formulario from detalles as y group by 1
> Except
> Select y.numero_formulario from detalles as y where y.codigo_producto not
> in (1)) as z on y.numero_formulario = z.numero_formulario
> El sept. 13, 2015 7:43 AM, "Carlos Perez" <carlos(dot)perez(at)syswarp(dot)com(dot)ar>
> escribió:
>
>> Perdon no puse código porque estoy respondiendo del celular y tengo dedos
>> de morcilla. Prometo que en cuanto agarre una pc escribo.
>> El query de francisco es correcto pero faltaria buscarle la vuelta para
>> usar = y <> reemplazando el in() que en definitiva es una función.si
>> <http://xn--funcin-fxa.si> el código tiene un indice podes probar lo lo
>> que te comenté escribiendo delante de ambas consultas explain plan...
>> Lo que comento es para que una vez hecha tu consulta te olvides para
>> siempre de la misma y no tengas problemas futuros si esas tablss crecen con
>> millones de registros.
>> Espero haber sido claro, disculpen lo escueto pero igual de cada parte de
>> lo escrito la comunidad dedico capitulos enteros que son mejores que esta
>> explicacion que solo busca orientar.
>>
>> Enviado con Aquamail para Android
>> http://www.aqua-mail.com
>>
>>
>> El 13 de septiembre de 2015 09:15:55 Horacio Miranda <hmiranda(at)gmail(dot)com>
>> escribio:
>>
>>
>>>
>>> On 9/13/2015 11:31 PM, José Fermín Francisco Ferreras wrote:
>>>
>>>> select *
>>>> from cabecera x inner join detalles y on
>>>> (x.numero_formulario=y.numero_formulario)
>>>> where y.codigo_producto not in (1)
>>>>
>>>>
>>> select *
>>> from cabecera x,detalles y
>>> where
>>> x.numero_formulario=y.numero_formulario and
>>> y.codigo_producto not in (1) ;
>>>
>>>
>>> Prueba con esto por favor.
>>>
>>> Pero lo hace mal, ya que lo que hace es excluirme del listado los
>>>> formularios donde aparecen las naranjas.
>>>>
>>>> Y lo que se desea seleccionar los formularios donde no existen naranjas
>>>> facturadas.
>>>>
>>>>
>>>>
>>>> ing. José Fermín Francisco Ferreras
>>>> San Francisco de Macorís, Rep. Dom.
>>>>
>>>>
>>>> > Subject: Re: [pgsql-es-ayuda] Buscar datos en detalle
>>>> > To: josefermin54(at)hotmail(dot)com; pgsql-es-ayuda(at)postgresql(dot)org
>>>> > From: hmiranda(at)gmail(dot)com
>>>> > Date: Sun, 13 Sep 2015 15:25:32 +1200
>>>> >
>>>> > Copia y pega lo que tienes de tu SQL, que problema tienes ?
>>>> >
>>>> > On 9/13/2015 2:12 PM, José Fermín Francisco Ferreras wrote:
>>>> > > Ejemplo de lo que se necesita:
>>>> > >
>>>> > > numero_formulario: 1
>>>> > > Productor: 64
>>>> > > fecha: 05/09/2015
>>>> > > hora: 08:56:00
>>>> > > Monto_Total: 5000.00
>>>> > > numero_formulario: 1
>>>> > > codigo_producto: 1
>>>> > > Producto: Naranja
>>>> > > Cantidad: 5
>>>> > >
>>>> > > numero_formulario: 2
>>>> > > Productor: 2
>>>> > > fecha: 06/09/2015
>>>> > > hora: 10:00:00
>>>> > > Monto_Total: 14500.00
>>>> > > numero_formulario: 2
>>>> > > codigo_producto: 2
>>>> > > Producto: Pera
>>>> > > Cantidad: 2
>>>> > > numero_formulario: 2
>>>> > > codigo_producto: 1
>>>> > > Producto: Naranja
>>>> > > Cantidad: 3
>>>> > >
>>>> > > numero_formulario: 3
>>>> > > Productor: 10
>>>> > > fecha: 05/09/2015
>>>> > > hora: 13:30:00
>>>> > > Monto_Total: 4500.00
>>>> > > numero_formulario: 3
>>>> > > codigo_producto: 3
>>>> > > Producto: Piña
>>>> > > Cantidad: 1
>>>> > >
>>>> > > numero_formulario: 4
>>>> > > Productor: 11
>>>> > > fecha: 10/09/2015
>>>> > > hora: 13:50:00
>>>> > > Monto_Total: 11800.00
>>>> > > numero_formulario: 4
>>>> > > codigo_producto: 3
>>>> > > Producto: Piña
>>>> > > Cantidad: 1
>>>> > > numero_formulario: 4
>>>> > > codigo_producto: 2
>>>> > > Producto: Pera
>>>> > > Cantidad: 1
>>>> > > numero_formulario: 4
>>>> > > codigo_producto: 4
>>>> > > Producto: Sandia
>>>> > > Cantidad: 6
>>>> > >
>>>> > > Cuando ejecute la consulta debería desplegar los resultados
>>>> > > correspondientes a los formularios #3 y #4, ya que en esos no se
>>>> facturó
>>>> > > ninguna naranja.
>>>> > >
>>>> > > Nota: Este ejemplo lo represento como si hubiera hecho un join de
>>>> las
>>>> > > tablas.
>>>> > >
>>>> > >
>>>> > >
>>>> > > ing. José Fermín Francisco Ferreras
>>>> > > San Francisco de Macorís, Rep. Dom.
>>>> > >
>>>> > >
>>>> > > > Subject: Re: [pgsql-es-ayuda] Buscar datos en detalle
>>>> > > > To: josefermin54(at)hotmail(dot)com; pgsql-es-ayuda(at)postgresql(dot)org
>>>> > > > From: hmiranda(at)gmail(dot)com
>>>> > > > Date: Sun, 13 Sep 2015 13:34:03 +1200
>>>> > > >
>>>> > > >
>>>> > > >
>>>> > > > On 9/13/2015 10:52 AM, José Fermín Francisco Ferreras wrote:
>>>> > > > > Buenas tardes!!
>>>> > > > >
>>>> > > > > Estoy teniendo problemas con una consulta. Resulta que necesito
>>>> > > > > consultar en dos tablas:
>>>> > > > > -Maestro
>>>> > > > > numero_formulario**
>>>> > > > > productor
>>>> > > > > fecha
>>>> > > > > hora
>>>> > > > > monto_total
>>>> > > > >
>>>> > > > > detalles
>>>> > > > > numero_formulario*-
>>>> > > > > codigo_producto
>>>> > > > > producto
>>>> > > > > cantidad
>>>> > > > >
>>>> > > > > Resulta que necesito buscar en cuales formularios no se
>>>> facturó el
>>>> > > > > producto llamado "Naranja"
>>>> > > > >
>>>> > > >
>>>> > > > SELECT
>>>> > > > distinct numero_formulario
>>>> > > > FROM
>>>> > > > detalles
>>>> > > > WHERE
>>>> > > > producto <> 'Naranja';
>>>> > > >
>>>> > > > Esto es lo que necesitas ?
>>>> > > >
>>>> > > > > Lista de producto que se venden:
>>>> > > > > naranja
>>>> > > > > pera
>>>> > > > > piña
>>>> > > > > sandia
>>>> > > > >
>>>> > > > >
>>>> > > > >
>>>> > > > > ing. José Fermín Francisco Ferreras
>>>> > > > > San Francisco de Macorís, Rep. Dom.
>>>> >
>>>> > -
>>>> > Enviado a la lista de correo pgsql-es-ayuda
>>>> (pgsql-es-ayuda(at)postgresql(dot)org)
>>>> > Para cambiar tu suscripción:
>>>> > http://www.postgresql.org/mailpref/pgsql-es-ayuda
>>>>
>>>
>>> -
>>> Enviado a la lista de correo pgsql-es-ayuda (
>>> pgsql-es-ayuda(at)postgresql(dot)org)
>>> Para cambiar tu suscripción:
>>> http://www.postgresql.org/mailpref/pgsql-es-ayuda
>>>
>>
>>
>>
>> -
>> Enviado a la lista de correo pgsql-es-ayuda (
>> pgsql-es-ayuda(at)postgresql(dot)org)
>> Para cambiar tu suscripción:
>> http://www.postgresql.org/mailpref/pgsql-es-ayuda
>>
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Luis Fernando Lopez Aguilar 2015-09-13 14:45:02 Re: Buscar datos en detalle
Previous Message Hellmuth Vargas 2015-09-13 13:23:37 Re: Buscar datos en detalle