JOAOSANTACRUZ.COM

BDACA work

Data Bases in Open Source Software environments [BDACA]

 

Work Report 

 
 

Practice Exercices:

USE brotas;

-- -----------------------------------------------------
-- 1 - identificar o numero de telefone da Maria
-- -----------------------------------------------------
select telefone as '1 - telefone da Maria' from voluntarios where nome like 'maria';

-- -----------------------------------------------------
-- 2 - listar todos os voluntarios com um meail no dominio Circo.pt
-- -----------------------------------------------------
select nome  as '2 - palhacos do circo' from voluntarios where email like '%circo.pt';

-- -----------------------------------------------------
-- 3 - contar o numero de competencias do Batatinha
-- -----------------------------------------------------
select count(*) as '3 - nr competencias do Batatinha' from voluntarios inner join  comp_voluntarios on comp_voluntarios.id=voluntarios.id where voluntarios.nome='Batatinha';


-- -----------------------------------------------------
-- 4 - listar as disponibilidades do Joao silva
-- -----------------------------------------------------
select diaSemana as '4 - dia', hora_inicio as 'das', hora_fim as 'ate' from disponibilidade natural join voluntarios where voluntarios.nome='Jo„o Silva';


-- -----------------------------------------------------
-- 5 - somar as horas de disponibilidade da maria
-- -----------------------------------------------------
select hour(sum(TIMEDIFF(hora_fim,hora_inicio))) as '5 -horas de voluntaria da Maria' from disponibilidade natural join voluntarios where voluntarios.nome='Maria';


-- -----------------------------------------------------
-- 6 -Listar todos os voluntarios com competencia para contar historias
-- -----------------------------------------------------
select nome as '6 - contadores de historias' from voluntarios where id in (select id from comp_voluntarios inner join competencias on comp_voluntarios.comp_id=competencias.comp_id where competencias.competencia ='contar histÛrias');

-- -----------------------------------------------------
-- 7 -contar  os voluntarios indisponiveis ao domingo
-- -----------------------------------------------------
select count(id) as '7 - voluntarios indisponiveis ao domingo' from voluntarios where id not in (select id from disponibilidade where diaSemana = 'Domingo');

-- -----------------------------------------------------
-- 8 -Listar as competencias comuns a mais que um voluntario
-- -----------------------------------------------------
select competencia as '8 - competencias comuns' from competencias where comp_id in (select comp_id  from comp_voluntarios  group by comp_id  having  count(comp_id) > 1);

-- -----------------------------------------------------
-- 9 -Listar disponibilidade do voluntario inutil
-- -----------------------------------------------------
select diaSemana as '9 - dias sem voluntarios' from disponibilidade where id not in (select distinct(id) from comp_voluntarios);

 

by Pedro Brotas