Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- create database Lab108892LobbiaLaulhe2
- use Lab108892LobbiaLaulhe2
- create table estadocivil(
- id_estado_civil int identity(0,1),
- estado_civil varchar(50)
- constraint pk_estado_civil primary key(id_estado_civil)
- );
- create table tipos_licencia(
- id_tipo int identity(0,1),
- nombre varchar(50)
- constraint pk_tipolicencia primary key(id_tipo)
- )
- create table licencia(
- id_licencia int identity(0,1),
- id_legajo int,
- id_tipo int,
- goce_sueldo bit,
- fec_inicio datetime,
- duracion int
- constraint pk_licencia primary key(id_licencia)
- constraint fk_tipolicencia foreign key (id_tipo) references tipos_licencia(id_tipo),
- constraint fk_licenciaempleado foreign key(id_legajo) references empleados(id_legajo)
- )
- create table categorias(
- id_categoria int identity(0,1),
- nombre varchar(50)
- constraint pk_categoria primary key(id_categoria)
- )
- create table empleados(
- id_legajo int identity(0,1),
- nombre varchar(50),
- id_categoria int,
- id_estado_civil int,
- cantidad_hijos int,
- sueldo_prom float,
- constraint pk_id_legajo primary key(id_legajo),
- constraint fk_civilempleado foreign key (id_estado_civil) references estadocivil(id_estado_civil),
- constraint fk_categorias foreign key(id_categoria) references categorias(id_categoria)
- )
- insert into empleados(id_legajo,nom)
- insert into categorias (nombre) values ('A')
- insert into categorias (nombre) values ('B')
- insert into categorias (nombre) values ('C')
- insert into categorias (nombre) values ('D')
- insert into categorias (nombre) values ('E')
- insert into tipos_licencia(nombre) values( 'Sin licencia')
- insert into tipos_licencia(nombre) values( 'Maternidad')
- insert into tipos_licencia(nombre) values( 'Vacaciones')
- insert into tipos_licencia(nombre) values( 'Enfermedad')
- insert into estadocivil(estado_civil)values('Soltero')
- insert into estadocivil(estado_civil)values('Casado')
- insert into estadocivil(estado_civil)values('Viudo')
- insert into estadocivil(estado_civil)values('Divorciado')
- insert into licencia (id_legajo,id_tipo, goce_sueldo, fec_inicio,duracion) values(0,0,1,'23/06/2017',10)
- insert into empleados(nombre,id_categoria,id_estado_civil,cantidad_hijos,sueldo_prom)values('Carlos Gomez',0,0,2,500)
- --Seleccionar licencias con el tipo de licencia en string
- select id_licencia,T.nombre,goce_sueldo,fec_inicio,duracion from licencia L inner join tipos_licencia T on L.id_tipo = T.id_tipo
- --Seleccionar el empleado con el estado civil, el tipo de licencia y la categoria en string
- select id_legajo,E.nombre,EC.estado_civil,cantidad_hijos,sueldo_prom,TL.nombre,C.nombre
- from empleados E inner join estadocivil EC on E.id_estado_civil = EC.id_estado_civil inner join licencia L on E.id_licencia = L.id_licencia inner join tipos_licencia TL on L.id_tipo = TL.id_tipo
- inner join categorias C on E.id_categoria = C.id_categoria
- --seleccionar todo el empleado con toda su licencia
- select id_legajo,E.nombre,E.id_licencia,TL.nombre,L.goce_sueldo,L.fec_inicio,L.duracion
- from empleados E inner join estadocivil EC on E.id_estado_civil = EC.id_estado_civil inner join licencia L on E.id_licencia = L.id_licencia inner join tipos_licencia TL on L.id_tipo = TL.id_tipo
- inner join categorias C on E.id_categoria = C.id_categoria
- select TL.nombre,goce_sueldo,fec_inicio,duracion from Licencia L inner join tipos_licencia TL on L.id_tipo = TL.id_tipo
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement