Sei sulla pagina 1di 3

EXERCCIO 1

create table departamento (


id int not null,
nome varchar (45) null,
data_inicio date null,
primary key(id)
);
create table colaborador (
matricula int not null,
nome varchar (45) null,
endereco varchar (45) null,
salario numeric (10,2) null,
primary key (matricula),
departamento_id int not null,
foreign key (departamento_id) references departamento (id)
);
insert into departamento (id,nome,data_inicio)
values
(1, 'produo','2014-01-01'),
(2, 'administrativo','2014-01-01'),
(3, 'informatica','2014-01-01'),
(4, 'educao','2014-01-01');
insert into colaborador ( matricula, nome , salario, departamento_id)
values
(2001,'Fbio Jnior', 1500, 1),
(2002,'Martinho da Vila', 1200, 1),
(2003,'Renato Arago', 1300, 1 ),
(2004,'Xuxa Meneguel',1250,2),
(2005,'Alexandre Pires',1450,2),
(2006,'Miguel Falabela',1600,2);
select d.nome, avg(c.salario)
from colaborador c, departamento d
where c.departamento_id=d.id
group by d.nome;
EXERCCIO 2
create table departamento (
id int not null,
nome varchar (45) null,
data_inicio date null,
primary key (id)
);
create table colaborador (
matricula int not null,
nome varchar (45) null,
endereco varchar (45) null,
salario numeric (10,2) null,
primary key (matricula),
departamento_id int not null,
foreign key (departamento_id) references departamento (id)
);
insert into departamento (id,nome,data_inicio)

values
(1, 'produo','2014-01-01'),
(2, 'administrativo','2014-01-01'),
(3, 'informatica','2014-01-01'),
(4, 'educao','2014-01-01');
insert into colaborador ( matricula, nome , salario, departamento_id)
values
(2001,'Fbio Jnior', 1500, 1),
(2002,'Martinho da Vila', 1200, 1),
(2003,'Renato Arago', 1300, 1 ),
(2004,'Xuxa Meneguel',1250,2),
(2005,'Alexandre Pires',1450,2),
(2006,'Miguel Falabela',1600,2),
(2007,'Cassio Cardoso', 600,3),
(2008,'Marcos Fernandes',650,3);
update colaborador
set salario = salario * 1.15
where salario<700
EXERCCIO 3
create table departamento (
id int not null,
nome varchar (45) null,
data_inicio date null,
primary key (id)
);
create table colaborador (
matricula int not null,
nome varchar (45) null,
endereco varchar (45) null,
salario numeric (10,2) null,
supervisor int not null,
primary key (matricula),
departamento_id int not null,
foreign key (departamento_id) references departamento (id)
);
insert into departamento (id,nome,data_inicio)
values
(1, 'produo','2014-01-01'),
(2, 'administrativo','2014-01-01'),
(3, 'informatica','2014-01-01'),
(4, 'educao','2014-01-01');
insert into colaborador ( matricula, nome , salario, supervisor, departamento_id
)
values
(2001,'Fbio Jnior', 1500,1001, 1),
(2002,'Martinho da Vila', 1200,1001, 1),
(2003,'Renato Arago', 1300,1001, 1 ),
(2004,'Xuxa Meneguel',1250,1002, 2),
(2005,'Alexandre Pires',1450,1002, 2),
(2006,'Miguel Falabela',1600,1001, 2),
(2007,'Cassio Cardoso', 600,1002, 3),
(2008,'Marcos Fernandes',650,1001, 3);
delete
from colaborador
where supervisor=1002;

EXERCCIO 4
create table departamento (
id int not null,
nome varchar (45) null,
data_inicio date null,
primary key (id)
);
create table colaborador (
matricula int not null,
nome varchar (45) null,
sobrenome varchar(45)null,
endereco varchar (45) null,
salario numeric (10,2) null,
supervisor int not null,
departamento_id int not null,
primary key (matricula),
foreign key (supervisor) references colaborador(matricula),
foreign key (departamento_id) references departamento (id)
);
insert into departamento (id,nome,data_inicio)
values
(1, 'produo','2014-01-01'),
(2, 'administrativo','2014-01-01'),
(3, 'informatica','2014-01-01'),
(4, 'educao','2014-01-01');
insert into colaborador ( matricula, nome ,sobrenome, salario,supervisor, depart
amento_id)
values
(2001,'Fbio' ,'Oliveira', 1500,2001, 1),
(2002,'Martinho','Silva', 1200, 2001, 1),
(2003,'Renato','Arago', 1300, 2001, 1 ),
(2004,'Xuxa ','Meneguel',1250,2006, 2),
(2005,'Alexandre',' Pires',1450,2006, 2),
(2006,'Miguel',' Oliveira',1600,2006, 2),
(2007,'Cassio',' Cardoso', 600,2008, 3),
(2008,'Marcos ','Fernandes',650, 2008, 3);
select c.nome,supervisor, d.nome
from colaborador c, supervisor s, departamento d
where c.sobrenome='Oliveira'

Potrebbero piacerti anche