Anda di halaman 1dari 3

create database CarWash

use CarWash
go
create table Carro(
placaAuto varchar(20) not null PRIMARY KEY,
marcaAuto varchar(50) null,
modeloAuto varchar(50) null,
dniPropietario int null,
nombrePropietario varchar(100) null

create table Trabajador(


dniTrabajador int not null PRIMARY KEY,
nombreTrabajador varchar(50) null,
apellidosTrabajador varchar(70) null,
telefonoTrabajador int null,
sueldo float null,
horasTrabajo float null

create table Combustible(


id_atencion varchar(50) not null,
Tipo varchar(60) null,
costo float null,
foreign key (id_atencion) references atencionCarro
)

create table atencionCarro(


id_atencion varchar(50) not null primary key,
fechaAtencion date null,
cantidadGalones float null,
placaAuto varchar(20) not null,
dniTrabajador int not null,

foreign key (placaAuto) references Carro,

foreign key (dniTrabajador) references Trabajador,


)

alter table atencionCarro add id_servicio int identity(1,1) not null

insert into Carro values('XYZ-123','HUDSON','CAMPARA',123456789,'BRYAN TU PAPI RIKO


:v')
insert into Carro values('DSE-234','TOYOTA','TIGRE',11234124,'Mia Khalifa')
insert into Carro values('ERER21','TOYOTA','TIGRE',11234124,'otro')

insert into Trabajador values(87654321,'Scarlett','Johansson',958707753,1200,8)


insert into Trabajador values(12436578,'Angela','Migorda:V',958745455,800,6)
insert into Trabajador values(12324354,'Storm','Spirit',958703433,1200,8)
insert into Trabajador values(32435465,'Angela','Migorda:V',958745455,800,6)

insert into Combustible values('A001','95',15)


insert into Combustible values('A002','83',10)
insert into Combustible values('A003','90',12)
insert into Combustible values('A004','84',13)
insert into Combustible values('A005','95',25)
insert into Combustible values('A006','80',20)
insert into Combustible values('A007','81',20)
insert into Combustible values('A008','80',20)
insert into Combustible values('A009','80',20)

insert into Combustible values('A013','80',20)


insert into Combustible values('A014','80',20)

insert into atencionCarro values ('A001','12-12-2017',10,'DSE-234',87654321)


insert into atencionCarro values ('A002','22-02-2015',25,'XYZ-123',12436578)

insert into atencionCarro values ('A003','12-12-2014',30,'ERER21',12324354)


insert into atencionCarro values ('A004','22-02-2011',35,'XYZ-123',12436578)
insert into atencionCarro values ('A005','12-12-2012',12,'DSE-234',87654321)
insert into atencionCarro values ('A006','12-12-2017',21,'XYZ-123',12436578)
insert into atencionCarro values ('A007','12-12-2017',4,'DSE-234',87654321)
insert into atencionCarro values ('A008','22-02-2015',2,'XYZ-123',12436578)
insert into atencionCarro values ('A009','22-02-2015',2,'DSE-234',12436578)
insert into atencionCarro values ('A010','03-07-2017',10,'DSE-234',12436578)
insert into atencionCarro values ('A011','03-08-2017',10,'DSE-234',12436578)
insert into atencionCarro values ('A013','2017-08-03',10,'DSE-234',12436578)
insert into atencionCarro values ('A014','03-08-2017',10,'DSE-234',12436578)
select * from atencionCarro
select * from Combustible

/*lista de todos los registros*/

create procedure sp_registroGlobal2


as
select
Carro.placaAuto,Carro.nombrePropietario,Trabajador.nombreTrabajador+Trabajador.apel
lidosTrabajador as 'Nombre del Trabajador',atencionCarro.fechaAtencion,
((atencionCarro.cantidadGalones)*(Combustible.costo)) as 'Costo Total'
from Carro inner join atencionCarro on Carro.placaAuto=atencionCarro.placaAuto
inner join Trabajador on Trabajador.dniTrabajador=atencionCarro.dniTrabajador
inner join Combustible on
Combustible.id_atencion=atencionCarro.id_atencion

exec sp_registroGlobal2

/*lista de carros atendidos al dia*/


create procedure sp_ListaCarroDia
as
select
atencionCarro.id_atencion,Carro.placaAuto,Carro.nombrePropietario,atencionCarro.fec
haAtencion
from Carro inner join atencionCarro on Carro.placaAuto=atencionCarro.placaAuto
where atencionCarro.fechaAtencion=(SELECT CONVERT (date, GETDATE())) /*esto sera la
fecha actual*/
group by
atencionCarro.id_atencion,Carro.placaAuto,Carro.nombrePropietario,atencionCarro.fec
haAtencion
exec sp_ListaCarroDia

/*monto recaudado del dia*/

create procedure sp_MontoDia


as
select CONVERT (date, GETDATE()) as 'Fecha Actual',
SUM(((atencionCarro.cantidadGalones)*(Combustible.costo))) as 'Monto Recaudado en
el Dia'
from Carro inner join atencionCarro on Carro.placaAuto=atencionCarro.placaAuto
inner join Trabajador on Trabajador.dniTrabajador=atencionCarro.dniTrabajador
inner join Combustible on
Combustible.id_atencion=atencionCarro.id_atencion
where atencionCarro.fechaAtencion=(SELECT CONVERT (date, GETDATE()))

exec sp_MontoDia

/*trabajador que mas carros atendio*/


create procedure sp_TrbajadorMasAtendio
as
select top 1 Trabajador.nombreTrabajador,COUNT(atencionCarro.id_atencion)
from Trabajador inner join atencionCarro on
atencionCarro.dniTrabajador=Trabajador.dniTrabajador
group by Trabajador.nombreTrabajador

exec sp_TrbajadorMasAtendio

Anda mungkin juga menyukai