2
respostas

Status diferente em tabela pagamento e emprestimo

Ao fazer um join da tabela de empréstimo com pagamentos os status são diferentes, status 0 da tabela de empréstimo não é pendente na tabela de pagamentos:

with emprestimos as (
    SELECT * 
    FROM TabelaEmprestimo
),

pagamentos as (
    SELECT * 
    FROM TabelaPagamentos
),

final as (
    select 
        a.id_emprestimo, 
        a.status, 
        a.prazo, 
        a.dataInicio, 
        a.tipo, 
        a.valor, 
        a.id_cliente, 
        b.id_emprestimo as id_emprestimo_pagamento,
        b.status as status_b
    from emprestimos as a
    inner join pagamentos as b on a.id_emprestimo = b.id_emprestimo
)

select *
from final as a

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas

Oi, Artur, tudo bem?

De fato, ao cruzar as tabelas TabelaEmprestimo e TabelaPagamentos, você percebe que os status são diferentes. Mas isso acontece porque eles representam coisas diferentes:

  • Na TabelaEmprestimo, o campo Status indica se o empréstimo como um todo já foi quitado ou ainda está em aberto (0 para ativo, 1 para finalizado).
  • Já na TabelaPagamentos, o campo Status mostra se cada "parcela" específica já foi paga ou ainda está pendente ('Pago' ou 'Pendente').

Digamos que um empréstimo com Status = 0 (em aberto) já tenha alguns pagamentos com Status = 'Pago'. Isso só indica que o cliente está pagando, mas ainda não terminou de pagar tudo.

No exercício, o objetivo é somar os valores dos empréstimos ainda não quitados por completo, e isso pode ser feito apenas olhando o campo Status = 0 na TabelaEmprestimo.

Espero ter ajudado.

Qualquer dúvida que surgir, compartilhe no fórum.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Senti falta de uma didática mais clara na explicação dos conceitos e regras das bases de dados utilizadas nos exercícios — algo como um dicionário de dados seria muito mais produtivo.

Por exemplo, como saber que o status "0" representa "ativo" e "1" significa "finalizado"? Em outro exercício envolvendo joins, o campo "status" da tabela "empréstimo" traz "0" como "ativo" e "1" como "inativo".

Na minha visão, "inativo" e "finalizado" podem representar situações bem diferentes, o que pode gerar confusão.