Consultas de BD

From Grupo6 Especoo

(Difference between revisions)
(13 - Consultas de BD)
(13 - Consultas de BD)
 
(9 intermediate revisions not shown)
Line 1: Line 1:
=13 - Consultas de BD=
=13 - Consultas de BD=
-
Consultas utilizadas nos use cases:
 
-
insert chamado
+
'''Selecionar todos os atendentes de software'''
 +
''Álgebra relacional''
-
select chamado where status aberto
+
r1 := select especialidade = 'software' (atendentes);
-
update chamado prioridade, idAtendente, status
+
r2 := project idatend (r1);
-
select atendente
+
''Cálculo Relacional de Tuplas''
 +
r1 := { A.idatend | atendentes(A) and A.especialidade = 'software'};
-
select chamado where id atendente
+
''SQL''
-
update chamado status
+
r1 := select a.idatend from atendentes a where especialidade = 'software';
-
select chamado nrochamado
+
----
-
update chamado status  
+
'''Selecionar todos os chamados com status 'aberto' '''
-
update chamado id avaliacao
+
''Álgebra relacional''
 +
r1 := project idstatus(select descricao = 'aberto' (statuschamado));
-
Selecionar todos os ids dos atendentes de software
+
r2 := project nro, departamento, descricao (chamado njoin r1);
-
Álgebra relacional
+
''Cálculo Relacional de Tuplas''
-
r1 := select especialidade = 'software' (atendentes);
+
-
r2 := project idatend (r1);
+
-
Cálculo Relaciona de Tuplas
+
r1 := {C.nro, C.departamento, C.descricao | (exists S) ( statuschamado(S) and chamado(C) 
-
r1 := { A.idatend | atendentes(A) and A.especialidade = 'software'};
+
 
 +
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''
-
SQL
+
r1 := select C.nro, C.departamento, C.descricao from chamado C where C.nro = 3;
-
select a.idatend from atendentes a where especialidade = 'software';
+

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;

Personal tools