Ver Mensaje Individual
  #1  
Antiguo 05-11-2014
Avatar de eennzzoo
eennzzoo eennzzoo is offline
Miembro
NULL
 
Registrado: nov 2013
Ubicación: Argentina
Posts: 59
Reputación: 11
eennzzoo Va por buen camino
Consultas en SQL

Hola tengo las siguientes tablas y tengo dificultad en resolver las consultas.

Código SQL [-]
create table productos (cod_prod smallint not null,
                        descripcion varchar(30) not null,
                        marca varchar (30) not null,
                        stok int not null,
                        stock_min int not null,
                        precio float not null,
                        cod_grupo smallint not null,
                        cod_familia smallint not null,
                        primary key (cod_prod),
                        foreign key (cod_grupo) references grupo(cod_grupo),
                        foreign key (cod_familia) references familia(cod_familia))
create table proveedores (cod_prov smallint not null,
                          nombre varchar (30) not null,
                          telefono int not null,
                          direccion varchar (30) not null,
                          fax int  not null,
                          primary key (cod_prov))
create table pedidos (num_pedido smallint not null,
                     cod_prov smallint not null,
                     cod_prod smallint not null,
                     fecha date not null,
                     nombre_contacto varchar (30) not null,
                     primary key (num_pedido),
                     foreign key (cod_prov) references proveedores(cod_prov),
                     foreign key (cod_prod) references productos(cod_prod))
create table clientes (dni int not null,
                       nombre varchar(30) not null,
                       apellido varchar(30) not null,
                       direccion varchar (30) not null,
                       telefono varchar(11) not null,
                       primary key (dni))
create table compras (num_factura_compra smallint not null,
                      fecha_compra date not null,
                      fecha_venc date not null,
                      importe_total float not null,
                      forma_de_pago  varchar(30) check (forma_de_pago in ('Efectivo','Tarjeta de crédito','Tarjeta de débito','Cuenta Corriente')),
                      dni int not null,
                      primary key (num_factura_compra),
                      foreign key (dni) references clientes (dni))
create table facturas (num_factura smallint not null,
                       fecha date not null,
                       importe_total float not null,
                       cod_prov smallint not null,
                       cod_prod smallint not null,
                       primary key (num_factura),
                       foreign key (cod_prov) references proveedores(cod_prov),
                       foreign key (cod_prod) references productos(cod_prod))
create table familia (cod_familia smallint not null,
                      tipo varchar(30) not null,
                      primary key (cod_familia))
create table grupo (cod_grupo smallint not null,
                    tipo varchar (30) not null,
                    cod_familia smallint not null,
                    primary key (cod_grupo),
                    foreign key (cod_familia) references familia(cod_familia))
create table pagos (num_pago smallint not null,
                    fecha date not null,
                    saldo float not null,
                    num_factura_compra smallint not null,
                    primary key (num_pago),
                    foreign key (num_factura_compra) references compras(num_factura_compra))
create table detallefactura (num_factura smallint not null,
                             cod_prov smallint not null,
                             cantidad int not null,
                             foreign key (num_factura) references facturas(num_factura),
                             foreign key (cod_prov) references proveedores(cod_prov))
create table detallecompra (num_factura_compra smallint not null,
                            cod_prod smallint not null,
                            cantidad smallint not null,
                            foreign key (cod_prod) references productos(cod_prod),
                            foreign key (num_factura_compra) references compras(num_factura_compra))

insert into clientes (dni, nombre, apellido, direccion, telefono)
            values (33666888, 'Carlos', 'Sanchez', 'Corrientes 526','3435626983')    
insert into proveedores (cod_prov, nombre, telefono ,direccion, fax)
            values (1, 'Pedro', 343262659, 'Miguel David', 545466468)
insert into proveedores (cod_prov, nombre, telefono ,direccion, fax)
            values (2, 'Julian', 343562995, 'Almafuerte 899', 122364548)
insert into familia (cod_familia, tipo)
            values (1, 'Limpieza')
insert into familia (cod_familia, tipo)
            values (2, 'Bebidas')
insert into grupo (cod_grupo, tipo, cod_familia)
            values (1, 'Detergente', 1)
insert into grupo (cod_grupo, tipo, cod_familia)
            values (2, 'Agua', 2)
insert into grupo (cod_grupo, tipo, cod_familia)
            values (3, 'Gaseosas', 2)
insert into productos (cod_prod, descripcion, marca, stok, stock_min, precio, cod_grupo, cod_familia)
            values (1, 'Aguas minerales', 'Villavicencio', 20, 5, 15.5, 2, 2)
insert into productos (cod_prod, descripcion, marca, stok, stock_min, precio, cod_grupo, cod_familia)
            values (2, 'Gaseosas', 'Pepsi', 50, 10, 19, 3, 2)
insert into compras (num_factura_compra, fecha_compra, fecha_venc, importe_total,forma_de_pago, dni)
            values (80, '20/12/2014', '20/12/2015', 500, 'Efectivo', 33666888)
insert into compras (num_factura_compra, fecha_compra, fecha_venc, importe_total,forma_de_pago, dni)
            values (85, '20/11/2014', '20/12/2014', 20, 'Efectivo', 33666888)
insert into compras (num_factura_compra, fecha_compra, fecha_venc, importe_total,forma_de_pago, dni)
            values (90, '20/01/2015', '20/06/2015', 100, 'Cuenta Corriente', 33666888)
insert into detallecompra (num_factura_compra, cod_prod, cantidad)
            values (80,1,2)
insert into detallecompra (num_factura_compra, cod_prod, cantidad)
            values (80,2,3)
insert into detallecompra (num_factura_compra, cod_prod, cantidad)
            values (90,2,4)
insert into detallecompra (num_factura_compra, cod_prod, cantidad)
            values (85,2,5)
insert into pagos (num_pago, fecha, saldo, num_factura_compra)
            values (30, '23/06/2015', 500, 80)
insert into pagos (num_pago, fecha, saldo, num_factura_compra)
            values (40, '26/02/2015', 350, 90)
insert into facturas (num_factura, fecha, importe_total, cod_prov, cod_prod)
            values (40, '15/10/2014', 1000, 1, 1)
insert into detallefactura (num_factura, cod_prov, cantidad)
            values (40, 1, 24)
insert into pedidos (num_pedido, fecha, nombre_contacto, cod_prod, cod_prov)
            values (70, '30/06/2014', 'Alberto', 2, 1)
insert into pedidos (num_pedido, fecha, nombre_contacto, cod_prod, cod_prov)
            values (75, '30/09/2014', 'Alberto', 1, 2)
insert into pedidos (num_pedido, fecha, nombre_contacto, cod_prod, cod_prov)
            values (76, '30/09/2014', 'Alberto', 2, 2)

CONSULTAS:

--Código, descripción y cantidad de productos vendidos durante un mes dado

--Operaciones de un cliente dado durante un período indicado

--Saldo en cuenta corriente de un cliente dado

--Detalle de operaciones en cuenta corriente de un cliente dado

--Datos de proveedores que suministran aguas minerales y gaseosas

--Datos y cantidades de productos más vendidos durante un mes dado.

--Ganancia obtenida en un período dado.

--Medios de pagos más utilizados en el último trimestre.

--Totales de compras realizadas por familias y grupos de productos.
__________________
https://www.facebook.com/riverplateoficial

Última edición por Neftali [Germán.Estévez] fecha: 05-11-2014 a las 15:44:42. Razón: Editado, porque hace daño a la vista!!!
Responder Con Cita