Consultas de BD
From Grupo6 Especoo
(→13 - Consultas de BD) |
|||
(11 intermediate revisions not shown) | |||
Line 1: | Line 1: | ||
=13 - Consultas de BD= | =13 - Consultas de BD= | ||
- | |||
- | + | '''Selecionar todos os atendentes de software''' | |
- | + | ''Álgebra relacional'' | |
- | + | ||
- | + | ||
- | select | + | r1 := select especialidade = 'software' (atendentes); |
- | + | ||
- | select chamado | + | r2 := project idatend (r1); |
- | + | ||
- | + | ''Cálculo Relacional de Tuplas'' | |
+ | |||
+ | r1 := { A.idatend | atendentes(A) and A.especialidade = 'software'}; | ||
+ | |||
+ | ''SQL'' | ||
+ | |||
+ | r1 := select a.idatend from atendentes a where especialidade = 'software'; | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | '''Selecionar todos os chamados com status 'aberto' ''' | ||
+ | |||
+ | ''Álgebra relacional'' | ||
+ | |||
+ | r1 := project idstatus(select descricao = 'aberto' (statuschamado)); | ||
+ | |||
+ | r2 := project nro, departamento, descricao (chamado njoin r1); | ||
+ | |||
+ | ''Cálculo Relacional de Tuplas'' | ||
+ | |||
+ | r1 := {C.nro, C.departamento, C.descricao | (exists S) ( statuschamado(S) and chamado(C) | ||
+ | |||
+ | and S.descricao = 'aberto' and C.idstatus = S.idstatus) }; | ||
+ | |||
+ | ''SQL'' | ||
+ | |||
+ | r1 := select C.nro, C.departamento, C.descricao from chamado C where C.idstatus in (select | ||
+ | |||
+ | idstatus from statuschamado S where S.descricao = 'aberto'); | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | '''Selecionar todos os chamados do atendente 1''' | ||
+ | |||
+ | ''Álgebra relacional'' | ||
+ | |||
+ | r1 := project nro, departamento, descricao (select idatend = 1 (chamado)); | ||
+ | |||
+ | ''Cálculo Relacional de Tuplas'' | ||
+ | |||
+ | r1 := {C.nro, C.departamento, C.descricao | chamado(C) and C.idatend = 1}; | ||
+ | |||
+ | ''SQL'' | ||
+ | |||
+ | r1 := select C.nro, C.departamento, C.descricao from chamado C where C.idatend = 1; | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | '''Selecionar o chamado de número 3''' | ||
+ | |||
+ | |||
+ | ''Álgebra relacional'' | ||
+ | |||
+ | r1 := project nro, departamento, descricao (select nro = 3 (chamado)); | ||
+ | |||
+ | ''Cálculo Relacional de Tuplas'' | ||
+ | |||
+ | r1 := {C.nro, C.departamento, C.descricao | chamado(C) and C.nro= 3}; | ||
+ | |||
+ | ''SQL'' | ||
+ | |||
+ | r1 := select C.nro, C.departamento, C.descricao from chamado C where C.nro = 3; |
Current revision as of 14:41, 7 December 2006
[edit] 13 - Consultas de BD
Selecionar todos os atendentes de software
Álgebra relacional
r1 := select especialidade = 'software' (atendentes);
r2 := project idatend (r1);
Cálculo Relacional de Tuplas
r1 := { A.idatend | atendentes(A) and A.especialidade = 'software'};
SQL
r1 := select a.idatend from atendentes a where especialidade = 'software';
Selecionar todos os chamados com status 'aberto'
Álgebra relacional
r1 := project idstatus(select descricao = 'aberto' (statuschamado));
r2 := project nro, departamento, descricao (chamado njoin r1);
Cálculo Relacional de Tuplas
r1 := {C.nro, C.departamento, C.descricao | (exists S) ( statuschamado(S) and chamado(C)
and S.descricao = 'aberto' and C.idstatus = S.idstatus) };
SQL
r1 := select C.nro, C.departamento, C.descricao from chamado C where C.idstatus in (select
idstatus from statuschamado S where S.descricao = 'aberto');
Selecionar todos os chamados do atendente 1
Álgebra relacional
r1 := project nro, departamento, descricao (select idatend = 1 (chamado));
Cálculo Relacional de Tuplas
r1 := {C.nro, C.departamento, C.descricao | chamado(C) and C.idatend = 1};
SQL
r1 := select C.nro, C.departamento, C.descricao from chamado C where C.idatend = 1;
Selecionar o chamado de número 3
Álgebra relacional
r1 := project nro, departamento, descricao (select nro = 3 (chamado));
Cálculo Relacional de Tuplas
r1 := {C.nro, C.departamento, C.descricao | chamado(C) and C.nro= 3};
SQL
r1 := select C.nro, C.departamento, C.descricao from chamado C where C.nro = 3;