Ajuda com Select no Firebird
Estou usando Firebird 2.5
Tenho 3 tabelas são elas:
pessoa - Cadastro de pessoas campos (ID, nome... etc)
provento - Para armazenar os proventos das pessoas os campos são: (ID, FkPessoa, FkCompetencia, FKProvento, Vrl_venc, Vrl_desc)
competencia - Armazena uma descrição dos competências campos: (ID, descricao)
DescProvento - Armazena uma descrição de provento campos (ID, descricao)
Preciso do seguinte:
Criar um SELECT que liste
Nome da pessoa e a subtração dos vencimentos - descontos
Exemplo:
NOME | Líquido a receber
José da Silva | 1.487,15
Maria João | 2.548,77
A tabela de provento é para armazenar os recebimentos e descontos do contra cheque do funcionário, então preciso de uma lista de pessoa x o líquido a receber
Tenho 3 tabelas são elas:
pessoa - Cadastro de pessoas campos (ID, nome... etc)
provento - Para armazenar os proventos das pessoas os campos são: (ID, FkPessoa, FkCompetencia, FKProvento, Vrl_venc, Vrl_desc)
competencia - Armazena uma descrição dos competências campos: (ID, descricao)
DescProvento - Armazena uma descrição de provento campos (ID, descricao)
Preciso do seguinte:
Criar um SELECT que liste
Nome da pessoa e a subtração dos vencimentos - descontos
Exemplo:
NOME | Líquido a receber
José da Silva | 1.487,15
Maria João | 2.548,77
A tabela de provento é para armazenar os recebimentos e descontos do contra cheque do funcionário, então preciso de uma lista de pessoa x o líquido a receber
Wancley Ribeiro
Curtidas 0
Melhor post
Lucas Guimarães
11/12/2017
SELECT
p.nome,
SUM(e.vrl_venc - vrl_desc) as "Líquido a receber"
FROM pessoa
INNER JOIN provento e on e.fkpessoa = p.id
GROUP BY p.nome
ORDER BY p.nome
p.nome,
SUM(e.vrl_venc - vrl_desc) as "Líquido a receber"
FROM pessoa
INNER JOIN provento e on e.fkpessoa = p.id
GROUP BY p.nome
ORDER BY p.nome
GOSTEI 2
Mais Respostas
Wancley Ribeiro
11/12/2017
Acabei de testar (11/12) os nomes estão retornando corretamente mas a coluna líquido a receber está voltando vazia (null)
SELECT pessoa.nome, SUM(e.vrl_venc - vrl_desc) as "Líquido a receber" FROM pessoa
INNER JOIN provento e on e.fkpessoa = pessoa.id
GROUP BY pessoa.nome
ORDER BY pessoa.nome
Tive que mudar de p.nome para pessoa.nome o firebird não reconhecia p
SELECT pessoa.nome, SUM(e.vrl_venc - vrl_desc) as "Líquido a receber" FROM pessoa
INNER JOIN provento e on e.fkpessoa = pessoa.id
GROUP BY pessoa.nome
ORDER BY pessoa.nome
Tive que mudar de p.nome para pessoa.nome o firebird não reconhecia p
GOSTEI 1
Wancley Ribeiro
11/12/2017
Acabei de testar (11/12) os nomes estão retornando corretamente mas a coluna líquido a receber está voltando vazia (null)
SELECT pessoa.nome, SUM(e.vrl_venc - vrl_desc) as "Líquido a receber" FROM pessoa
INNER JOIN provento e on e.fkpessoa = pessoa.id
GROUP BY pessoa.nome
ORDER BY pessoa.nome
Tive que mudar de p.nome para pessoa.nome o firebird não reconhecia p
Resolvido fiz a seguinte mudança
SELECT pessoa.nome, (SUM(e.vrl_venc) - sum( vrl_desc)) as "Líquido a receber" FROM pessoa
INNER JOIN provento e on e.fkpessoa = pessoa.id
GROUP BY pessoa.nome
ORDER BY pessoa.nome
Valeu Lucas Deus o abençoe!
SELECT pessoa.nome, SUM(e.vrl_venc - vrl_desc) as "Líquido a receber" FROM pessoa
INNER JOIN provento e on e.fkpessoa = pessoa.id
GROUP BY pessoa.nome
ORDER BY pessoa.nome
Tive que mudar de p.nome para pessoa.nome o firebird não reconhecia p
Resolvido fiz a seguinte mudança
SELECT pessoa.nome, (SUM(e.vrl_venc) - sum( vrl_desc)) as "Líquido a receber" FROM pessoa
INNER JOIN provento e on e.fkpessoa = pessoa.id
GROUP BY pessoa.nome
ORDER BY pessoa.nome
Valeu Lucas Deus o abençoe!
GOSTEI 0