Tenho uma tabela simples com os campos: data (data do cadastro), numero_parcelas ( números de parcelas de um financiamento) e valor_parcelas ( valor de cada parcela).
Com isso preciso fazer uma sql que a partir da data atual, mostre para mim quais registros terminam o financiamento em no máximo 6 meses.
Se alguém puder me ajudar eu agradeço.
Att.
SELECT * FROM TABELA WHERE data >= data_atual && data >= (data_atual + 6).
Qual é o banco de dados ?
1 curtida
Bom dia Guilherme, o banco é Oracle
eu escrevi que deu certo, mas ai fui validar e vi que o sistema esta puxando datas invalidas
SELECT V3.DATA AS "DATA-CADASTRO",
ADD_MONTHS(TRUNC(V3.DATA), v3.meses) DATA_FINAL
FROM VENDA_FINANCIAMENTO V3
Um detalhe que não mencionei, usei a SQL
acima para determinar a data final e esta show, mas ainda não consegui fazer uma condição que determinasse o fim do financiamento nos próximos 6 meses
1 curtida
Tenta assim
SELECT
V3.DATA AS "DATA-CADASTRO",
ADD_MONTHS(TRUNC(V3.DATA), 6) DATA_FINAL
FROM VENDA_FINANCIAMENTO V3
Bom dia guilhermebhte, primeiramente obrigado pela atenção, mas se eu usar desta forma
a query ira me retornar somente as datas apos 6 meses do cadastro, exemplo se eu tiver um finaciamento de 48 meses com data de cadastro de 01/04/2015, sendo que o final seria 01/04/2019.
Entaão eu preciso de uma query que me retorno um relatorio que tenhas datas finalizando a partir de hoje (sysdate) até 6 meses a frente, no caso o cadastro que finaliza 01/04/2019 deve ser retornado no relatorio
SELECT V3.DATA AS “DATA-CADASTRO”,
ADD_MONTHS(TRUNC(V3.DATA), v3.meses) DATA_FINAL
FROM VENDA_FINANCIAMENTO V3
AND ADD_MONTHS(TRUNC(V3.DATA), v3.meses) >= ‘26/03/2019’ and ADD_MONTHS(TRUNC(V3.DATA), v3.meses) <= ‘26/08/2019’
Coloquei da forma acima, deu certo, mas queria refatorar isso colocar de forma mais limpa.
Pra efeito de elegância e didática no código se algum tiver alguma forma agradecerei.
Att
bjs
Mas acho que você postou isso
Mas se deu certo, está ok
De forma mais clara seria isso ?
SELECT V3.DATA AS ‘DATA - CADASTRO’, ADD_MONTHS(TRUNC(V3.DATA), V3.MESES) DATA_FINAL
FROM VENDA_FINANCIAMENTO V3
WHERE ADD_MONTHS(TRUNC(V3.DATA), V3.MESES) >= TRUNC(SYSDATE)
AND ADD_MONTHS(TRUNC(V3.DATA), V3.MESES) <= ADD_MONTHS(TRUNC(SYSDATE), 6);