Escolar Documentos
Profissional Documentos
Cultura Documentos
b) Listar os balcões com activos maiores que todos (qualquer) os activos localizados no
Porto
SELECT n_balcão
FROM balcão
WHERE activo > ALL (SELECT activo
FROM balcão
WHERE cidade_balcão = 'Porto')
b) Listar os clientes que tenham conta no balcão 10 mas não tenham empréstimo
(diferença)
SELECT cliente.nome_cliente
FROM cliente
WHERE exists (select *
from deposito
where cliente.nome_cliente = deposito.nome_cliente
and deposito.n_balcão=10)
AND not exists (select *
from emprestimo
where cliente.nome_cliente = emprestimo.nome_cliente
and emprestimo.n_balcão=10)
c) Listar os clientes que tenham conta em todos os balcões de Setúbal
SELECT DISTINCT nome_cliente
FROM deposito S
WHERE (NOT EXISTS (SELECT balcão.n_balcão
FROM balcão
WHERE balcão.cidade_balcão="Setúbal"
AND balcão.n_balcão NOT IN (SELECT n_balcão
FROM deposito T
WHERE S.nome_cliente =
T.nome_cliente))
)
AND
(
EXISTS (SELECT *
FROM balcao b
WHERE b.cidade_balcao = "Setúbal"
)
c) Listar o saldo médio em cada balcão para valores de saldo médio superiores a 10.000
SELECT n_balcão, avg(saldo)
FROM deposito
GROUP BY n_balcão
HAVING avg(saldo)>10000;
d) Listar o balcão (ou balcões) com o maior saldo médio
SELECT deposito.n_balcão, Avg(deposito.saldo) AS MédiaDesaldo
FROM deposito
GROUP BY deposito.n_balcão
HAVING Avg(deposito.saldo)>= ALL ( SELECT Avg(deposito.saldo)
FROM deposito
GROUP BY deposito.n_balcão);
g) Listar os balcões com saldo médio maior do que o saldo médio de todas as contas
SELECT n_balcão
FROM deposito
GROUP BY n_balcão
HAVING avg(saldo) >= ALL ( SELECT avg(saldo)
FROM deposito
GROUP BY n_balcão)