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 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 <hmira...@gmail.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: josefermi...@hotmail.com; pgsql-es-ayuda@postgresql.org
 > From: hmira...@gmail.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: josefermi...@hotmail.com; pgsql-es-ayuda@postgresql.org
 > > > From: hmira...@gmail.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@postgresql.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@postgresql.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@postgresql.org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Reply via email to