Título: ayuda con estas consultas¿? Publicado por: xGENiiiuS en 6 Abril 2016, 20:05 pm Buenas estaba estudiando gbd y la verdad no consigo que salga lo que neceisot en las consultas paso los datos:
---------------------------------------- modelo relacional ------------------------------------------- provincias( codpro, nombre) pueblos( codpue, nombre, provincia) clientes( codcli, nombre, direccion, codpostal, pueblo) vendedores( codven, nombre, direccion, codpostal, pueblo, jefe) articulos(codart, descrip, precio, stock, stock_min ) facturas( codfac, fecha, cliente, vendedor, iva, dto ) lineas_fac(factura, linea, cant, articulo, precio, dto ) --------------------------------- enunciado consultas ---------------------------------------------- a) Obtener el código de vendedor, nombre y el número de clientes a los que ha realizado factura cada uno de los vendedores. ( esta es la que esoty haciendo y no hay manera) select v.codven "cod_vendedor", v.nombre "nombre_vendedor", count(f.cliente) "numero clientes" from vendedores v, facturas f where f.cliente = v.codven; group by v.codven; b) El código y nombre de aquellas provincias en las que no hubo ventas de los vendedores residentes en dichas provincias durante el presente año. c) Código y nombre de aquellos clientes que han facturado a menos de 3 vendedores distintos residentes en su misma provincia. d) Mostrar el mejor vendedor de las provincias de Almería y Huelva para el año anterior al actual. Título: Re: ayuda con estas consultas¿? Publicado por: crisoof en 7 Abril 2016, 15:55 pm A)la primera respuesta esta mal, tienes que hacer un join entre 3 tablas, clientes, vendedores y facturas las condiciones de igualdad deben ser las correctas, tu estas igualando el cod_vendedor con el cod_cliente
b)la pregunta b tbn son 3 tablas, las tablas son vendedores, provincias y pueblos c) tienes que cruzar las tablas cliente,factura,pueblo, provincia d) aqui tengo una duda a que se refiere con linea_factura dependiendo de la respuesta tendrias que cruzar vendedor,facturas,pueblo,provincia o vendedor,lineas_fac,facturas,pueblo,provincia Exito en la resolucion, pregunta si no entiendes algo saludos Título: Re: ayuda con estas consultas¿? Publicado por: xGENiiiuS en 7 Abril 2016, 18:05 pm gracias la primera ya me ha salido :
a) select v.codven, v.nombre, count(f.cliente) from vendedores v, facturas f where v.codven = f.cliente group by v.codven las demas probare luego mas tarde muchas gracias amigo :) Título: Re: ayuda con estas consultas¿? Publicado por: crisoof en 7 Abril 2016, 20:05 pm tu primera consulta esta mal, deberías igualar
Código: select v.codven, la query que tu tienes no tiene bien la condicion, igualas v.codven con f.cliente deberias igualar el codven con el codigo de vendedor en este caso vendedor de la tabla factura, si no es el mismo dato que en la tabla vendedor debes hacer el join que te indique antes, cruzar 3 tablas tambien te aconsejaria uses para hacer un join los inner join para que puedas programar mas ordenado y no te compliques mas adelante saludos |