SELECT tc.nome
FROM TabelaClientes tc
where(SELECT status from TabelaEmprestimo te
where te.id_cliente = tc.id_cliente
and status = 1);
SELECT tc.nome
FROM TabelaClientes tc
where(SELECT status from TabelaEmprestimo te
where te.id_cliente = tc.id_cliente
and status = 1);
Olá, Márcia! Como vai?
Mandou muito bem na resolução da atividade!
Observei que você explorou o uso de uma subquery para filtrar os registros, utilizou muito bem o alias para deixar o código mais legível e ainda compreendeu a importância do relacionamento entre tabelas para obter o resultado desejado.
Uma dica interessante para o futuro é usar EXISTS para verificar a existência de registros relacionados. Dessa forma:
SELECT tc.nome
FROM TabelaClientes tc
WHERE EXISTS (
SELECT 1
FROM TabelaEmprestimo te
WHERE te.id_cliente = tc.id_cliente
AND te.status = 1
);
Resultado: Lista de clientes que possuem empréstimos ativos (status = 1).
Isso faz a consulta ficar mais performática e clara em comparação ao uso direto de subqueries na cláusula WHERE
.
Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:
Alguns materiais estão em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.
Fico à disposição! E se precisar, conte sempre com o apoio do fórum.
Abraço e bons estudos!