Upload
daaha2
View
226
Download
7
Embed Size (px)
DESCRIPTION
Database
Citation preview
/*EJECUCION 1---------------------------------------------------------------------------------*/
Create Database Ferreteria
/*EJECUCION 2---------------------------------------------------------------------------------*/
use Ferreteria
Create Table Ofertas(
Id_Art char(15),Fvigencia datetime,Precio_Oferta numeric(9,2),
)
Create Table Articulos(
Id_Art char(15),Descripcion char(65),Precio_Costo numeric(9,2),Precio_Vta_Mayoreo numeric(9,2),Precio_Vta_Menudeo numeric(9,2),Id_Unidad char(3),Ubicacion char(10),Existencia numeric(7,2),Id_Grupo char(2),Equivalencia numeric(3),Patron_Medida char(1),Maximo numeric(4),Minimo numeric(4),Promedio numeric(4),Compuesto char(2),
)
Create Table Grupos(
Id_Grupo char(2),Descripcion char(25),
)
Create Table Unidades(
Id_Unidad char(3),Descripcion char(15),Abreviatura char(4),
)
Create Table Det_Vta(
Id_Art char(15),Cantidad numeric(5,2),Precio numeric(7,2),Id_Venta char(10),Descto numeric(5,2),Id_Unidad char(3),
)
Create Table Det_Compra(
Id_Compra char(10),Id_Art char(15),
Precio numeric(7,2),Cantidad numeric(5,2),Descto numeric(5,2),Id_Unidad char(3),
)
Create Table Proveedor(
RFC char(13),Id_Prov char(3),Nombre char(60),Calle char(35),Colonia char(30),Ciudad char(18),CP char(6),Estado char(15),Telefono char(10),Correo char(35),Contacto char(40),Clabe_Cta char(18),Id_Banco char(2),
)
Create Table Clientes(
Id_Cte char(3),RFC char(13),Nombre char(60),Calle char(35),Colonia char(40),CP char(6),Ciudad char(18),Estado char(15),Telefono char(10),Limite_Credito numeric(5),Correo char(35),Contacto char(40),Clabe_Cta char(18),Fecha datetime,Id_Agente char(3),Dias_Credito numeric(3),
)
/*Correccion de longitud al atributo RFC de la tabla Clientes en caso de que le hubiera puesto un valor diferente
ALTER table Clientesalter column RFC char(13)
*/
Create Table Ventas(
Id_Venta char(10),No_Factura char(10),Id_Cte char(3),Descto numeric(5,2),Fecha datetime,Docto_Expedido char(1),Lugar_Exp char(18),Forma_Pago char(2),Cta_Banco char(4),P_IVA numeric(5,2),Fecha_Venc datetime,
Id_Agente char(3),)
Create Table Agentes(
Id_Agente char(3),Nombre char(60),
)
Create Table Bancos(
Id_Banco char(2),Descripcion char(20),Telefono char(10),Calle char(35),Colonia char(30),Ciudad char(18),Estado char(15),CP char(6),
)
Create Table Compras(
Id_Compra char(10),No_Factura char(10),Id_Prov char(3),Fecha datetime,Lugar_Exp char(15),Forma_Pago char(2),Descto numeric(5,2),Cta_Banco char(4),Fecha_Venc datetime,P_IVA numeric(5,2),Id_Agente char(3),Docto_Expedido char(1),
)
/*EJECUCION 3---------------------------------------------------------------------------------*//*
Los datos de la tabla que yo habìa hecho ya remplazaremos con los datos que dio el profe
INSERT INTO Articulos values('CAJACLAVOS','CLAVOS',420.30,'CAJ','BODEGA1',50,'CO',737.50,551.90,???,'?',
100, 20, 60)
INSERT INTO Articulos values('CABLENUM12','CABLEADO ELECTRICO
NUM12',105.00,'CAJ','BODEGA2',25,'HI',737.50,551.90,???,'?', ????, ????, ????)
INSERT INTO Articulos values('HIDROROTOPLAS34','HIDROBOMBA
ROTOPLAS',428.67,'PZ','????',25,'HI',737.50,551.90,???,'?', ????, ????, ????)
INSERT INTO Articulos values('HIDROROTOPLAS34','HIDROBOMBA
ROTOPLAS',428.67,'PZ','????',25,'HI',737.50,551.90,???,'?', ????, ????, ????)
INSERT INTO Articulos
values('HIDROROTOPLAS34','HIDROBOMBA ROTOPLAS',428.67,'PZ','????',25,'HI',737.50,551.90,???,'?', ????, ????, ????)*/
/*DATOS PROVISTOS POR EL PROFE....Grpos, Unidades y Articulos*/
INSERT INTO Gruposvalues('01','MAT. ELECTRICO')
INSERT INTO Gruposvalues('02','PINTURAS')
INSERT INTO Gruposvalues('03','HERRAMIENTAS')
INSERT INTO Unidadesvalues('01','metro','mt')
INSERT INTO Unidadesvalues('02','caja','caja')
INSERT INTO Unidadesvalues('03','pieza','pza')
INSERT INTO Unidades values('04','kilogramo','kg')
INSERT INTO Articulosvalues('1','Cable Electrico No12',8,10,12,'02','A4',10,'01',100,'2',50,5,7,'02')
INSERT INTO Articulosvalues('2','Lata 18 Lts Rojo',126,180,240,'04','B2',12,'02',18,'2',7,2,5,'03')
INSERT INTO Articulosvalues('3','Llave Perica No4',80,120,90,'03','A14',8,'03',1,'1',5,2,3,'03')
INSERT INTO Articulosvalues('4','Tubo PVC 4 pulgadas',60,90,140,'01','B6',15,'04',6,'2',15,4,6,'03')
INSERT INTO Articulosvalues('5','Lata 1 Lts Azul', 35, 45, 68,'04','A7',20,'02',1,'1',15,5,8,'04')
INSERT INTO Articulosvalues('6','Juego llaves Allen',120,160,270,'03','A3',4,'03',1,'1',3,1,2,'03')
/*-------------------------------------------------------------------------*//*-------------------------------------------------------------------------*//*-------------------------------------------------------------------------*/
INSERT INTO Clientes values('JCR','PERC123837H9T','JASSO CONSTRUCTORES','BLVD FCO
IMADERO','GUADALUPE','25750','MONCLOVA','COAHUILA','8666334652',10000,'[email protected]','JOSE LUIS SANCHEZ ORTIZ','123345647991345648','12/10/2012','YVS',128)
INSERT INTO Clientes values('CJI','CJIM983436G9W','CONSTRUCTORA JIMENEZ','BLVD.
B.JUAREZ
','GUADALUPE','25750','MONCLOVA','COAHUILA','8666358467',50000,'[email protected]','HUMBERTO RAMIREZ SALAS','539871315471379413','15/03/2012','FRM',324)
INSERT INTO Clientes values('HIP','HINP731568K6C','HINOJOSA PREMEZCLADOS','LIB. CARLOS SALINAS DE
GORTARI','OCCIDENTAL','28930','FRONTERA','COAHUILA','8666329436',35000,'[email protected]','GUILLERMO DURAN ESPINOSA','671365482634428167','16/10/2012','HOP',60)
INSERT INTO Clientes values('DIA','DIAZ387648Y4S','ELECTRONICA DIAZ','VENUSTIANO
CARRANZA','CENTRO','25000','MONCLOVA','COAHUILA','8666351158',28000,'[email protected]','VICENTE RUIZ JARAMILLO','834561397781314516','16/10/2012','MLD',55)
INSERT INTO Clientes values('HVE','RPES164557A1Q','HERRERIA VELEZ','RAMOS
ARIZPE','REVOLUCION','25630','SAN BUENAVENTURA','COAHUILA','8661308462',300,'[email protected]','DANIEL BUENTELLO PEREZ','729435913349135441','24/09/2012','DSC',85)
INSERT INTO Agentes values('YVS','YUVISELA VELAZQUEZ SANCHEZ')
INSERT INTO Agentes values('FRM','FRANCISO ROMO MARTINEZ')
INSERT INTO Agentes values('HOP','HUGO OLVERA PEREZ')
INSERT INTO Agentes values('MLD','MONICA LOPEZ DURAN')
INSERT INTO Agentes values('DSC','DANIEL SALAZAR CISNEROS')
INSERT INTO Proveedor values('CEAP673482D6S','CAP','CEMENTOS APASCO S.A.','CARRETERA MTY-SALTILLO
KM.8','PROGRESO','MONTERREY','28690','NUEVO LEON','8181535732','[email protected]','ARMANDO MORALES NUÑES','376254543877351924','BR')
INSERT INTO Proveedor values('STER384657T2D','STR','STEREN DE MEXICO','AV. PINO SUAREZ','LOS
URDIALES','MONTERREY','28730','NUEVO LEON','8181525149','[email protected]','TERESA LOPEZ CASAS','671859325517954682','HS')
INSERT INTO Proveedor values('PHIL149366R6Q','PHI','PHILIPS GLOBAL','AV. MURILLO VIDAL','MITRAS
NORTE','MONTERREY','28740','NUEVO LEON','8181537822','[email protected]','ALFREDO MARTINEZ LIRA','716549351866421384','SR')
INSERT INTO Proveedor values('RTPL934725C2J','RTP','GRUPO ROTOPLAS','AV. LUIS DONALDO COLOSIO','SAN
FRANCISCO','SANTA CATARINA','28790','NUEVO LEON','8181541738','[email protected]','GABRIELA MEJIA ORTIZ','816347532498865617','SC')
INSERT INTO Proveedor values('TODE579324W5L','TOD','ACEROS Y PERFILES TODESA','LIB. CARLOS SALINAS DE
GORTARI','REGIDORES','FRONTERA','25850','COAHUILA','8666348257','[email protected]','NORBERTO GARCIA MUÑOZ','463817689423547896','BX')
INSERT INTO Bancos values('BR','BANCOMER','8666483782','BLVD. EJERCITO
NACIONAL','CHAMIZAL','MONCLOVA','COAHUILA','25843')
INSERT INTO Bancos values('HS','HSBC','8666973654','BLVD. HAROLD R.
PAPE','GUADALUPE','MONCLOVA','COAHUILA','26781')
INSERT INTO Bancos values('SR','SANTANDER','8666482794','BLVD. HAROLD R.
PAPE','GUADALUPE','MONCLOVA','COAHUILA','29574')
INSERT INTO Bancos values('SC','SCOTIABANK
INVERLAT','8666278366','CARRANZA','CENTRO','MONCLOVA','COAHUILA','26837')
INSERT INTO Bancos values('BX','BANAMEX','8666492461','AV.
MONTERREY','GUADALUPE','MONCLOVA','COAHUILA','24832')
INSERT INTO Compras
values('047','8','CAP','29/05/2012','FRONTERA','TA',10.5,'8324','29/08/2012',16,'YVS','T')
INSERT INTO Compras
values('038','47','STR','22/06/2012','CASTAÑOS','CO',12.5,'1379','22/09/2012',16,'FRM','F')
INSERT INTO Compras
values('071','24','PHI','04/10/2012','S.BUENAVENTURA','CO',11.7,'3984','04/12/2012',16,'HOP','T')
INSERT INTO Det_Compra values('047','1',12,3,5.4,'02')
INSERT INTO Det_Compra values('038','2',240,5,9.7,'04')
INSERT INTO Det_Compra values('071','3',90,7,4.1,'03')
INSERT INTO Ofertas values('1','31/12/2012',9)
INSERT INTO Ofertas values('2','31/12/2012',150)
INSERT INTO Ofertas values('3','31/12/2012',85)
INSERT INTO Ventas
values('001','1','JCR',20.32,'14/08/2011','F','SALTILLO','CO','6871',16.0,'14/09/2012','YVS')
INSERT INTO Ventas
values('002','3','CJI',10.5,'01/09/2012','T','TORREON','TA','8439',16.0,'01/10/2012','FRM')
INSERT INTO Ventas
values('003','6','HIP',12.3,'03/10/2012','T','MONCLOVA','TA','5914',16.0,'03/11/2012','HOP')
INSERT INTO Det_Vta values('1',9,12,'001',8.4,'02')
INSERT INTO Det_Vta values('2',6,240,'002',13.2,'04')
INSERT INTO Det_Vta values('3',7,90,'003',7.2,'03')
/*FIN DE EJECUCION 3---------------------------------------------------------------------------------*/
/*QUERY 1*//*1) Realizamos una venta al cliente 5 el dia de hoy, la cual facturamos con la
factura 25, lacual contiene el articulo 4 con 5 unidades y el articulo 6 con 2 unidades*/
Select *From Articulos
INSERT INTO Ventas
values('005','1','CJI',20.32,'28/10/2012','F','MONCLOVA','CO','6871',16.0,'28/11/2012','HOP')
INSERT INTO Det_Vta values('4',5,14,'005',8.4,'03')
INSERT INTO Det_Vta values('6',2,20,'005',8.4,'01')
Update Articulos set Existencia=Existencia-5where Id_Art ='4'
Update Articulos
set Existencia = Existencia-2where Id_Art ='6'
/*2) Cambiar la fecha de vencimiento de la venta cuyo Id_Venta es "X", poner como fecha de vencimiento 15 dias mas
a partir de la fecha actual*/Select *From Ventas /*Update Ventas
set Fecha_Venc = '28/10/2012'where Id_Venta ='005'
*/Update Ventas
set Fecha_Venc = DATEADD(DD ,15,Fecha_Venc)--set Fecha_Venc = DATEADD(DD ,15,GETDATE())--OTRA OPCION, SEGUN EL DIA ACTUALwhere Id_Venta = '005'
/*3) Cambiar el atributo Cuenta_Bco a tamaño 18 de la tabla "Ventas"*/ALTER Table Ventas
ALTER Column Cta_banco char(18)
/*--------------------------------------------------------QUERY 2
1) Mostrar todos los articulos del grupo 022) Modificar el precio de venta de los articulos del grupo 01 aumentandole un 10%3) ¿Cuantos articulos hay en la tabla de "Articulos"4) Muestre descripciòn del articulo, nombre del grupo al que pertenece por cada
articulo5) Muestre la descripcion, unidad(descripcion) de los articulos cuyo precio sea
mayor de $150.006) Cambie la existencia del articulo 2, disminuyala en 3 unidades7) Muestre todos los clientes que tienen cuyo limite de crèdito es mayor que 25008) Cambie el nombre de la unidad "kilogramo", ponga "kilo"9) ¿Cuantos clientes tiene la tabla "Clientes"?10) Ponga un nuevo campo en la tabla "Clientes" con el nombre "Pais" tipo character
de 15*/
/*1)*/Select *
From Articulos Where Id_Grupo = 02
/*2)*/Update Articulos
set Precio_Vta_Menudeo = Precio_Vta_Menudeo+(Precio_Vta_Menudeo *0.10)Where Id_Grupo = 01
Update Articulos set Precio_Vta_Mayoreo = Precio_Vta_Mayoreo+(Precio_Vta_Mayoreo *0.10)Where Id_Grupo = 01
/*Select *
From Articulos *//*3)*/
Select COUNT(Id_Art)From Articulos
/*4)*/Select A.Descripcion, B.Descripcion
From Articulos A, Grupos BWhere A.Id_Grupo = B.Id_Grupo
/*5)*/Select A.Descripcion, B.Descripcion
From Articulos A, Unidades BWhere (A.Id_Unidad = B.Id_Unidad) AND A.Precio_Vta_Menudeo >= 150
/*6*/Update Articulos
set Existencia = 3where Id_Art =2
/*Select *
From Articulos *//*7)*/Select *
From Clientes where Limite_Credito > 2500
/*8)*/
Update Unidades set Descripcion = 'kilo'where Descripcion = 'kilogramo'
/*Select *
From Unidades *//*9)*/Select COUNT(Id_Cte)
From Clientes /*Select *
From Clientes*/ /*10)*/
ALTER Table ClientesADD Pais char(15)
/*Select *
From Clientes *//*10)-CONTINUACION*/Update Clientes
set Pais = 'EU'where Id_Cte = 'JCR'
Update Clientes set Pais = 'ESPAÑA'where Id_Cte = 'CJI'
Update Clientes set Pais = 'ARGENTINA'
where Id_Cte = 'HIP'
Update Clientes set Pais = 'CANADA'where Id_Cte = 'DIA'
Update Clientes set Pais = 'MEXICO'where Id_Cte = 'HVE'
/*Select *
From Clientes */
/*--------------------------------------------------------------------------------*//*QUERY 3--------------------------------------------------------------------------------*/
/*Select *From Ventas
Select *From Det_Vta
Select *From Articulos */
/*1) Calcular el total vendido en el dia y mostrarlo*/
INSERT INTO Ventas
values('006','1','JCR',20.32,'28/10/2012','F','SALTILLO','CO','6871',16.0,'28/11/2012','YVS')
INSERT INTO Ventas
values('007','1','CJI',20.32,'28/10/2012','F','MONCLOVA','CO','6871',16.0,'28/11/2012','HOP')
INSERT INTO Ventas
values('008','1','HIP',20.32,'28/10/2012','F','SALTILLO','TA','6871',16.0,'28/11/2012','FRM')
INSERT INTO Det_Vta values('6',2,14,'006',8.4,'03')
INSERT INTO Det_Vta values('4',8,23,'007',8.4,'01')
INSERT INTO Det_Vta values('5',5,20,'008',8.4,'04')
INSERT INTO Det_Vta values('5',3,20,'007',9.3,'04')
/*Select *From Ventas
Select *From Det_Vta */Select sum(B.Precio*B.Cantidad) AS 'Total venta'
From Ventas A, Det_Vta BWhere A.Fecha = '28/10/2012' AND A.Id_Venta=B.Id_Venta
/*Where A.Fecha = getdate() AND A.Id_Venta=B.Id_Venta*/ --getdate() probablemente no aplique/*SELECT getdate() From Ventas
select getdate()*/
/*2) Mostrar cada una de las ventas con su detalle (No_Factura, Id_Art, Descripcion, Precio unitario(Precio) y Cantidad)*/Select A.Id_Venta, A.No_Factura,B.Id_Art, C.Descripcion, B.Precio, B.Cantidad
From Ventas A, Det_Vta B, Articulos CWhere A.Id_Venta= B.Id_Venta AND B.Id_Art=C.Id_Art
/*3) Muestre cuanto le hemos vendido al cliente "X" en el trasncurso del mes*/Select A.Id_Cte, A.Nombre,SUM(C.Cantidad*C.Precio) AS Total
From Clientes A, Ventas B, Det_Vta CWhere A.Id_Cte ='JCR' AND B.Fecha BETWEEN '01/10/2012' AND GETDATE() AND
A.Id_Cte=B.Id_Cte AND B.Id_Venta=C.Id_Venta Group By A.Id_Cte, A.Nombre
/*4) Muestre el nombre de cada producto, su existencia y sus precios de venta (de articulos cuyo "Precio_Costo" estè entre 50 y 100*/Select Descripcion, Existencia, Precio_Vta_Mayoreo, Precio_Vta_Menudeo, Precio_Costo
From Articulos Where Precio_Costo BETWEEN 50 AND 100
/*PENDIENTES*//*5) Cuantas unidades hemos vendido del articulo "X" y a cuanto asciende su $ dicha venta en el transcurso del mes actual*/
Select *From Det_Vta
Select *From Articulos
/*Select A. Id_Art, C. Descripcion, A.Cantidad, A.Precio, A.Id_Venta, SUM(A.Cantidad), SUM(A.Cantidad*A.Precio)
From Det_Vta A, Ventas B, Articulos CWhere A.Id_Art ='5' AND C.Id_Art=A.Id_Art AND A.Id_Venta=B.Id_Venta AND B.Fecha
BETWEEN '01/10/2012' AND GETDATE()GROUP BY A. Id_Art, C. Descripcion, A.Cantidad, A.Precio, A.Id_Venta
*/
Select SUM(A.Cantidad) AS 'Cantidad de Unidades', SUM(A.Cantidad*A.Precio) AS '$ TOTAL'From Det_Vta A, Ventas BWhere A.Id_Art ='5' AND A.Id_Venta=B.Id_Venta AND B.Fecha BETWEEN '01/10/2012' AND
GETDATE()
/*6) Elimine la factura No "X" y su detalle*/
Select *
From Ventas
Delete Ventas Where No_Factura='3'
/*7) Cuanto es el valor del Inventario actual*/Select *
From Articulos
Select SUM(Precio_Costo*Existencia)From Articulos
--EXTRAS-----------------EXTRAS-----------------EXTRAS-----------------EXTRAS---------------
Select PrecioFrom Det_Vta
Select CantidadFrom Det_Vta
Select sum(Precio)From Det_Vta
Select sum(Cantidad)From Det_Vta
Select (sum(Precio)/sum(Cantidad)) AS DIVISIONFrom Det_Vta
Select (Precio/Cantidad) AS DIVISIONFrom Det_Vta
Select Precio, CantidadFrom Det_Vta
Select Precio, CantidadFrom Det_Vta
Select AVG(A.Precio), AVG(A.Cantidad), SUM(B.Limite_Credito)From Det_Vta A, Clientes B--GROUP BY B.Limite_Credito
Select Limite_Credito From Clientes
Select SUM(Limite_Credito) From Clientes