elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  AYUDA CON UNA CONSULTITA SQL
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: AYUDA CON UNA CONSULTITA SQL  (Leído 3,663 veces)
John_Salchichon

Desconectado Desconectado

Mensajes: 7


Ver Perfil
AYUDA CON UNA CONSULTITA SQL
« en: 13 Junio 2011, 04:42 am »

El tema es asi, para cada "proveedor" mostrar sus datos (todos) y la menor entrega hecha de componentes de cada uno de ellos.

Las tablas son:

Proveedores (codProv, nomProv, dirProv, telProv)
Prov-Gen-Comp (codProv, codGen, numSerComp, fecha, cant)

de donde la cantidad de componentes entregados es la columna "cant" de la tabla Prov-Gen-Comp

entonces lo que hice fue:

SELECT P.*, PGC.cant
      FROM PROVEEDORES P, PROV_GEN_COMP PGC
      WHERE P.codprov = PGC.codprov
      AND PGC.cant = (SELECT MIN (PGC.cant)
                      FROM PROV_GEN_COMP);

como no me dejo hacerle un MIN en la primer linea sin ponerle al final un group by, me decidi a hacer una subconsulta por probar y si me deja sin problemas, pero ahora el tema es que me lista TODOS los proveedores, por ejemplo lo que me esta  devolviendo la consulta asi como esta  es:
CODPROV                NOMPROV                        DIRPROV                        TELPROV                        CANT                  
---------------------- ------------------------------ ------------------------------ ------------------------------ ----------------------
3                      Cuqui Lacalle                  Av.Italia 1223                 225321                         2                      
12                     Horacio Peralta                Mariano Uriarte 8754           2623145                        4                      
4                      Tanque Silva                   Jackson 5523                   24112365                       5                      
8                      Pato Sosa                      Yi esq. 18 de julio            2745232                        6                      
5                      Sebastian Viera                Cerro Largo 1524               2147823                        7                      
3                      Cuqui Lacalle                  Av.Italia 1223                 225321                         8                      

 6 filas seleccionadas


cuando solo deberia mostrar una sola vez Cuqui Lacalle con la menor entrega, o sea 3 junto con los demas... o sea tendrian q aparecer todos esos menos cuqui lacalle con 8 entregas.. no se si se entiende..

alguna idea de como solucionar esto o pista a ver en que le estoy errando?

Gracias!




« Última modificación: 13 Junio 2011, 04:45 am por John_Salchichon » En línea

VCore

Desconectado Desconectado

Mensajes: 71



Ver Perfil
Re: AYUDA CON UNA CONSULTITA SQL
« Respuesta #1 en: 13 Junio 2011, 05:31 am »

No termino de entender que es lo que querés proyectar.

En español la consulta sería:
"Dame la información del proveedor que tiene menos entregas hechas, agregándole el número de componentes entregados"
o
"Dame la información de todos los proveedores, agregando el número de componentes entregados"
?

De última pega el resultado que queres ver con tu consulta, onda:

CODPROV                NOMPROV                        DIRPROV                        TELPROV                        CANT                 
---------------------- ------------------------------ ------------------------------ ------------------------------ ----------------------
3                      Cuqui Lacalle                  Av.Italia 1223                 225321                         2                     



« Última modificación: 13 Junio 2011, 05:40 am por VCore » En línea

John_Salchichon

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: AYUDA CON UNA CONSULTITA SQL
« Respuesta #2 en: 13 Junio 2011, 05:50 am »

es asi:

Para cada proveedor mostrar sus datos y la menor entrega hecha de componentes de cada uno de ellos.

y deberia retornar:

---------------------- ------------------------------ ------------------------------ ------------------------------ ----------------------
3                      Cuqui Lacalle                  Av.Italia 1223                 225321                         2                     
12                     Horacio Peralta                Mariano Uriarte 8754           2623145                        4                     
4                      Tanque Silva                   Jackson 5523                   24112365                       5                     
8                      Pato Sosa                      Yi esq. 18 de julio            2745232                        6                     
5                      Sebastian Viera                Cerro Largo 1524               2147823                        7           
« Última modificación: 13 Junio 2011, 06:03 am por John_Salchichon » En línea

bomba1990


Desconectado Desconectado

Mensajes: 395



Ver Perfil WWW
Re: AYUDA CON UNA CONSULTITA SQL
« Respuesta #3 en: 13 Junio 2011, 07:01 am »

creo que por lo que has dicho con un group by y un min, puedes hacer lo que quieres, agrupas todos para que te salgan una sola ves, y un min te sale el que menos trae, porque no quieres hacer un group by?
En línea

"Cuando le di de comer a los pobres me llamaron santo, pero cuando pregunte porque los pobres eran pobres me dijeron comunista"

http://sosinformatico.blogspot.com/
http://www.publisnet.com.ve
John_Salchichon

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: AYUDA CON UNA CONSULTITA SQL
« Respuesta #4 en: 13 Junio 2011, 07:08 am »

Donde iria el group by? es que nunca lo use mucho aun, lo puse en la consulta y me tiro error
En línea

John_Salchichon

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: AYUDA CON UNA CONSULTITA SQL
« Respuesta #5 en: 13 Junio 2011, 07:17 am »

listo ya lo solucione con el group by:

SELECT P.CODPROV, P.DIRPROV, P.NOMPROV, P.TELPROV, MIN(PGC.cant)
      FROM PROVEEDORES P, PROV_GEN_COMP PGC
      WHERE P.codprov = PGC.codprov
      GROUP BY P.CODPROV, P.DIRPROV, P.NOMPROV, P.TELPROV;


estaba tratando de hacer group by con P.* y me daba error, habia que escribir todos los campos, ese era el problema.. muchas gracias!
En línea

bomba1990


Desconectado Desconectado

Mensajes: 395



Ver Perfil WWW
Re: AYUDA CON UNA CONSULTITA SQL
« Respuesta #6 en: 13 Junio 2011, 07:20 am »

supongo que con poner solamente groupby codprov pues suficiente, porque si por cosa de la vida dos empresas diferentes tienen el mismo direccion o nombre o x, pues te va a acausar un pequeño problema, el groupby solo al cod va a ser mas que suficiente, ademas pones al motor a trabajar menos.
En línea

"Cuando le di de comer a los pobres me llamaron santo, pero cuando pregunte porque los pobres eran pobres me dijeron comunista"

http://sosinformatico.blogspot.com/
http://www.publisnet.com.ve
John_Salchichon

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: AYUDA CON UNA CONSULTITA SQL
« Respuesta #7 en: 13 Junio 2011, 07:29 am »

probe con agruparlo solo con codprov como decis pero el oracle me larga un error, cuando los pongo a todos no... sera que funciona asi oracle?
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
una consultita
Programación Visual Basic
satan69 8 2,535 Último mensaje 2 Mayo 2007, 14:46 pm
por dimitrix
[Ayuda] Necesito ayuda para crear un buen video uso AF y Flash.
Diseño Gráfico
XXXXXX 1 5,499 Último mensaje 11 Noviembre 2009, 00:17 am
por Sub_Cero
Ayuda por davor ayuda os ruego ayuda XD (SOLUCIONADO)
Hardware
XxRekcahlExX 6 10,573 Último mensaje 24 Mayo 2010, 00:56 am
por Aprendiz-Oscuro
AYUDA CON OTRA CONSULTITA SQL
Bases de Datos
John_Salchichon 4 4,236 Último mensaje 16 Junio 2011, 13:44 pm
por KuraraGNU
Una consultita
Redes
galo1963 9 4,320 Último mensaje 8 Octubre 2018, 10:13 am
por chapo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines