Re: [pgsql-es-ayuda] Buscar datos en detalle
Carlos Perez escribió: > 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... IN no es una función, y se optimiza diferente dependiendo de lo que haya dentro. En el caso de Francisco yo habría tratado de usar "naranjas NOT ANY =" como dijo alguien, y a la derecha poner un ARRAY( .. ) que incluya los ID de productos de cada formulario. -- Álvaro Herrerahttp://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services - 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
RE: [pgsql-es-ayuda] Buscar datos en detalle
Necesito visualizar los formularios donde no se facturaron ninguna naranja. 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: Mon, 14 Sep 2015 01:18:01 +1200 > > No es eso lo que quieres ? > > On 9/14/2015 12:39 AM, Horacio Miranda wrote: > > Creo que tu modelo de datos tiene un problema. > > > > On 9/14/2015 12:25 AM, José Fermín Francisco Ferreras wrote: > >> Existen un problema con esa consulta: > >> > >> Si las naranjas aparecen de primero y luego otra fruta, me selecciona > >> ese formulario como si no hubiera naranjas, pero, si no fueron > >> facturadas las naranjas en dicho formulario. > >> > >> 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: Mon, 14 Sep 2015 00:14:35 +1200 > >> > > >> > > >> > > >> > 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 > >> > > > > > >> > > > >
Re: [pgsql-es-ayuda] Buscar datos en detalle
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 > > > FRO
Re: [pgsql-es-ayuda] Buscar datos en detalle
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.pe...@syswarp.com.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 <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 >>>
Re: [pgsql-es-ayuda] Buscar datos en detalle
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
RE: [pgsql-es-ayuda] Buscar datos en detalle
select *from cabecera x inner join detalles y on (x.numero_formulario=y.numero_formulario)where y.codigo_producto not in (1) 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
Re: [pgsql-es-ayuda] Buscar datos en detalle
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" <hiv...@gmail.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.pe...@syswarp.com.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 <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
RE: [pgsql-es-ayuda] Buscar datos en detalle
Existen un problema con esa consulta: Si las naranjas aparecen de primero y luego otra fruta, me selecciona ese formulario como si no hubiera naranjas, pero, si no fueron facturadas las naranjas en dicho formulario. 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: Mon, 14 Sep 2015 00:14:35 +1200 > > > > 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 > > > > > > consul
Re: [pgsql-es-ayuda] Buscar datos en detalle
Creo que tu modelo de datos tiene un problema. On 9/14/2015 12:25 AM, José Fermín Francisco Ferreras wrote: Existen un problema con esa consulta: Si las naranjas aparecen de primero y luego otra fruta, me selecciona ese formulario como si no hubiera naranjas, pero, si no fueron facturadas las naranjas en dicho formulario. 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: Mon, 14 Sep 2015 00:14:35 +1200 > > > > 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!! > > > > >
Re: [pgsql-es-ayuda] Buscar datos en detalle
No es eso lo que quieres ? On 9/14/2015 12:39 AM, Horacio Miranda wrote: Creo que tu modelo de datos tiene un problema. On 9/14/2015 12:25 AM, José Fermín Francisco Ferreras wrote: Existen un problema con esa consulta: Si las naranjas aparecen de primero y luego otra fruta, me selecciona ese formulario como si no hubiera naranjas, pero, si no fueron facturadas las naranjas en dicho formulario. 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: Mon, 14 Sep 2015 00:14:35 +1200 > > > > 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 Fer
Re: [pgsql-es-ayuda] Buscar datos en detalle
Para tu modelo de datos creo que algo como esto debiera entregar lo que estas buscando ( pero insisto que debieras normalizarlo ). select * from cabecera x,detalles y where x.numero_formulario=y.numero_formulario and x.numero_formulario not in (select distinct numero_formulario from detalles where codigo_producto = 1) ; On 9/14/2015 12:39 AM, Horacio Miranda wrote: Creo que tu modelo de datos tiene un problema. On 9/14/2015 12:25 AM, José Fermín Francisco Ferreras wrote: Existen un problema con esa consulta: Si las naranjas aparecen de primero y luego otra fruta, me selecciona ese formulario como si no hubiera naranjas, pero, si no fueron facturadas las naranjas en dicho formulario. 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: Mon, 14 Sep 2015 00:14:35 +1200 > > > > 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
Re: [pgsql-es-ayuda] Buscar datos en detalle
Mmmm bueno que tal con select numero_formulario from (select numero_formulario, array_agg(producto) as array_productos_vendidos group by 1 ) foo where 'Naranja' != ALL(array_productos_vendidos); ? (Luego discutimos sobre performance :) Gerardo - Mensaje original - > De: "José Fermín Francisco Ferreras" <josefermi...@hotmail.com> > Para: "Lista PostgreSQL" <pgsql-es-ayuda@postgresql.org> > Enviados: Sábado, 12 de Septiembre 2015 19:52:25 > Asunto: [pgsql-es-ayuda] Buscar datos en detalle > > > 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" > > > 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
RE: [pgsql-es-ayuda] Buscar datos en detalle
Excelente!! Les agradezco a todos (en especial a Horacio Miranda) por tomarse su tiempo en ayudarme con este dolor de cabeza. P.D.: Horacio tienes toda la razón con relación a la normalización de la tabla, tomaré ese punto en cuenta!! 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: Mon, 14 Sep 2015 09:20:43 +1200 > > Para tu modelo de datos creo que algo como esto debiera entregar lo que > estas buscando ( pero insisto que debieras normalizarlo ). > > select * >from cabecera x,detalles y > where >x.numero_formulario=y.numero_formulario and >x.numero_formulario not in (select distinct numero_formulario from > detalles where codigo_producto = 1) ; > > On 9/14/2015 12:39 AM, Horacio Miranda wrote: > > Creo que tu modelo de datos tiene un problema. > > > > On 9/14/2015 12:25 AM, José Fermín Francisco Ferreras wrote: > >> Existen un problema con esa consulta: > >> > >> Si las naranjas aparecen de primero y luego otra fruta, me selecciona > >> ese formulario como si no hubiera naranjas, pero, si no fueron > >> facturadas las naranjas en dicho formulario. > >> > >> 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: Mon, 14 Sep 2015 00:14:35 +1200 > >> > > >> > > >> > > >> > 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 > >> > > > > > >> > > > > nume
Re: [pgsql-es-ayuda] Buscar datos en detalle
Si te interesa aprender bien modelamiento y consultas, lee el libro Lan times SQL. Es un libro viejo, pero aprendi mucho leyendo ese libro cuando estaba en la universidad. creo que este es el link. http://www.amazon.com/LAN-Times-Guide-SQL-Series/dp/007882026X On 9/14/2015 12:44 PM, José Fermín Francisco Ferreras wrote: Excelente!! Les agradezco a todos (en especial a Horacio Miranda) por tomarse su tiempo en ayudarme con este dolor de cabeza. P.D.: Horacio tienes toda la razón con relación a la normalización de la tabla, tomaré ese punto en cuenta!! > >> > 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
[pgsql-es-ayuda] Buscar datos en detalle
Buenas tardes!! Estoy teniendo problemas con una consulta. Resulta que necesito consultar en dos tablas:-Maestronumero_formulario**productorfechahoramonto_total detallesnumero_formulario*-codigo_productoproductocantidad Resulta que necesito buscar en cuales formularios no se facturó el producto llamado "Naranja" Lista de producto que se venden:naranjaperapiñasandia ing. José Fermín Francisco Ferreras San Francisco de Macorís, Rep. Dom.
RE: [pgsql-es-ayuda] Buscar datos en detalle
Ejemplo de lo que se necesita: numero_formulario: 1Productor: 64fecha: 05/09/2015hora: 08:56:00Monto_Total: 5000.00numero_formulario: 1codigo_producto: 1Producto: NaranjaCantidad: 5 numero_formulario: 2Productor: 2fecha: 06/09/2015hora: 10:00:00Monto_Total: 14500.00numero_formulario: 2codigo_producto: 2Producto: PeraCantidad: 2numero_formulario: 2codigo_producto: 1Producto: NaranjaCantidad: 3 numero_formulario: 3Productor: 10fecha: 05/09/2015hora: 13:30:00Monto_Total: 4500.00numero_formulario: 3codigo_producto: 3Producto: PiñaCantidad: 1 numero_formulario: 4Productor: 11fecha: 10/09/2015hora: 13:50:00Monto_Total: 11800.00numero_formulario: 4codigo_producto: 3Producto: PiñaCantidad: 1numero_formulario: 4codigo_producto: 2Producto: PeraCantidad: 1numero_formulario: 4codigo_producto: 4Producto: SandiaCantidad: 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.
Re: [pgsql-es-ayuda] Buscar datos en detalle
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
Re: [pgsql-es-ayuda] Buscar datos en detalle
W Enviado con Aquamail para Android http://www.aqua-mail.com El 12 de septiembre de 2015 19:53:48 José Fermín Francisco Ferrerasescribio: Buenas tardes!! Estoy teniendo problemas con una consulta. Resulta que necesito consultar en dos tablas:-Maestronumero_formulario**productorfechahoramonto_total detallesnumero_formulario*-codigo_productoproductocantidad Resulta que necesito buscar en cuales formularios no se facturó el producto llamado "Naranja" Lista de producto que se venden:naranjaperapiñasandia ing. José Fermín Francisco Ferreras San Francisco de Macorís, Rep. Dom.
Re: [pgsql-es-ayuda] Buscar datos en detalle
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
Re: [pgsql-es-ayuda] Buscar datos en detalle
Supongo que si tenes codificado, dicho código estara indexado y tiene fk con la tabla de productos. Ahi tu consulta va a ser performante. Si haces un ilike dentro de una consulta el motor hace full scan. Tarda mas, no usa los indices .. en fin. No te conviene buscar por parte de la descripcion salvo que sea exacta y este indexada por descripción. Enviado con Aquamail para Android http://www.aqua-mail.com El 12 de septiembre de 2015 22:35:24 Horacio Mirandaescribio: 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