WorksheetsConsultas SQL
Total questions: 8
Worksheet time: 29mins
Sabendo que a tabela EMPRESTIMO (id, cpf, valor, data) possui relacionamento com CLIENTE (cpf, nome). Que EMPRESTIMO possui uma chave artificial gerenciada pelo MySQL. E que todos os campos de EMPRESTIMO são obrigatórios.
Qual comando cria corretamente a tabela EMPRESTIMO?
CREATE TABLE emprestimo (
id bigint not null auto_increment,
cpf varchar(14) not null,
valor float not null,
data date not null,
primary key (id),
foreign key cliente_fk (cpf) references cliente (cpf)
);
CREATE TABLE emprestimo (
id bigint not null,
cpf varchar(14) not null,
valor decimal(10,2) not null,
data date not null,
primary key (id),
foreign key cliente_fk (cpf) references cliente (cpf)
);
INSERT TABLE emprestimo (
id bigint not null auto_increment,
cpf varchar(14) not null,
valor decimal(10,2) not null,
data date not null,
primary key (id),
foreign key cliente_fk (cpf) references cliente (cpf)
);
CREATE TABLE emprestimo (
id bigint not null auto_increment,
cpf varchar(14) not null,
valor decimal(10,2) not null,
data date not null,
primary key (id),
foreign key cliente_fk (cpf) references cliente (cpf)
);
Dada as tabelas CLIENTE (cpf, nome) e EMPRESTIMO (id, cpf, valor, data), qual a consulta pesquisa todos os clientes que FIZERAM empréstimos?
SELECT * FROM cliente
FULL JOIN emprestimo;
SELECT * FROM cliente
INNER JOIN emprestimo ON cpf = cpf;
SELECT * FROM cliente c
INNER JOIN emprestimo e ON c.cpf = e.cpf;
SELECT * FROM cliente c
RIGHT JOIN emprestimo e ON c.cpf = e.cpf;
Dada as tabelas CLIENTE (cpf, nome) e EMPRESTIMO (id, cpf, valor, data), qual a consulta pesquisa o nome e o valor de todos os clientes que NÃO fizeram empréstimos?
SELECT * FROM clientes c
LEFT JOIN emprestimo e ON c.cpf = e.cpf;
SELECT nome, valor FROM clientes c
LEFT JOIN emprestimo e ON c.cpf = e.cpf
WHERE c.cpf = NULL;
SELECT nome, valor FROM clientes c
LEFT JOIN emprestimo e ON c.cpf = e.cpf
WHERE c.cpf IS NULL;
SELECT nome, valor FROM clientes c
LEFT JOIN emprestimo e ON c.cpf = e.cpf
WHERE e.cpf IS NULL;
Data as seguintes tabelas, qual consulta que exibe o nome, o valor e o status das parcelas.
O cliente quer saber quais clientes estão inadimplentes.
Que consulta cria um relatório com o NOME DO CLIENTE e o VALOR TOTAL devido por ele?
Melhore a exibição mostrando primeiro as maiores parcelas.
SELECT c.nome, sum(p.valor)
FROM cliente c
INNER JOIN emprestimo e ON c.cpf = e.cpf
INNER JOIN parcela p ON e.id = p.emprestimo
GROUP BY c.nome
HAVING p.status = 'ATRASADA'
ORDER BY sum(valor) DESC;
SELECT c.nome, sum(p.valor)
FROM cliente c
INNER JOIN emprestimo e ON c.cpf = e.cpf
INNER JOIN parcela p ON e.id = p.emprestimo
WHERE p.status = 'ATRASADA'
GROUP BY c.nome
ORDER BY sum(valor) DESC;
SELECT c.nome, sum(p.valor)
FROM cliente c
INNER JOIN emprestimo e ON c.cpf = e.cpf
INNER JOIN parcela p ON e.id = p.emprestimo
WHERE p.status = 'ATRASADA'
GROUP BY c.nome
ORDER BY sum(valor);
Sabendo que a chave primária da tabela PARCELA é o campo id, as interrogações para completar o relatório que exiba o relatório ao lado.
SELECT ??????
FROM cliente c
INNER JOIN emprestimo e ON c.cpf = e.cpf
INNER JOIN parcela p ON e.id = p.emprestimo
GROUP BY c.nome, e.valor, p.valor;
OBS.: não use nem espaços após vírgulas no campos!
(a)
Dada as tabelas CLIENTE (cpf, nome) e EMPRESTIMO (id, cpf, valor, data), o cliente quer saber o nome dos clientes e a quantidade de empréstimos feitos por eles. Digite a consulta que atenda ao requisito solicitado pelo cliente.
Cliente quer saber quais os clientes mais fiéis para enviar brindes de fim de ano para cada um deles. Um cliente é considerado fiel quando fez mais de 5 empréstimos.
Crie a consulta adequada sabendo que as tabelas são CLIENTE (cpf, nome) e EMPRESTIMO (id, cpf, valor, data).
