Select sem data de vencimento repetida.
Prezados,
Estou realmente com um problema, do qual acredito já ter solução, mas como final de Ano é meta a pressa é inimiga da perfeição.
Preciso da ajuda para selecionar na tabela (vencimentos), abaixo, somente os registros com a MAIOR data de vencimento (DT_VENC) sem repetição das outras datas MENORES ou inferiores .
Assim
DT_VENC DT_PAGTO PG VLR_M VLR_REC CODIGO_ALUNO
13/11/2015 13/10/2015 S 100 100 3 NAO APARECER
10/12/2015 10/11/2015 S 100 100 3 OK
10/12/2015 10/11/2015 S 100 100 4 OK
13/11/2015 13/10/2015 S 100 100 4 NAO APARECER
10/12/2015 10/11/2015 S 100 100 5 OK
06/11/2015 07/10/2015 S 120 120 5 NAO APARECER
02/11/2015 02/10/2015 S 216 216 6 OK
03/10/2015 02/09/2015 N 100 100 7 OK
10/12/2015 10/11/2015 S 100 100 8 OK
06/11/2015 06/10/2015 S 100 100 8 NAO APARECER
03/12/2015 01/11/2015 S 120 120 9
06/11/2015 06/10/2015 S 100 100 10
05/12/2015 05/11/2015 S 100 100 10
03/10/2015 02/09/2015 N 120 120 11
03/12/2015 01/11/2015 S 100 100 12
09/11/2015 09/10/2015 S 120 120 13
04/12/2015 04/11/2015 S 120 120 14
16/11/2015 16/10/2015 S 120 120 14
04/12/2015 04/11/2015 S 120 120 15
Obrigado a todos.
Estou realmente com um problema, do qual acredito já ter solução, mas como final de Ano é meta a pressa é inimiga da perfeição.
Preciso da ajuda para selecionar na tabela (vencimentos), abaixo, somente os registros com a MAIOR data de vencimento (DT_VENC) sem repetição das outras datas MENORES ou inferiores .
Assim
DT_VENC DT_PAGTO PG VLR_M VLR_REC CODIGO_ALUNO
13/11/2015 13/10/2015 S 100 100 3 NAO APARECER
10/12/2015 10/11/2015 S 100 100 3 OK
10/12/2015 10/11/2015 S 100 100 4 OK
13/11/2015 13/10/2015 S 100 100 4 NAO APARECER
10/12/2015 10/11/2015 S 100 100 5 OK
06/11/2015 07/10/2015 S 120 120 5 NAO APARECER
02/11/2015 02/10/2015 S 216 216 6 OK
03/10/2015 02/09/2015 N 100 100 7 OK
10/12/2015 10/11/2015 S 100 100 8 OK
06/11/2015 06/10/2015 S 100 100 8 NAO APARECER
03/12/2015 01/11/2015 S 120 120 9
06/11/2015 06/10/2015 S 100 100 10
05/12/2015 05/11/2015 S 100 100 10
03/10/2015 02/09/2015 N 120 120 11
03/12/2015 01/11/2015 S 100 100 12
09/11/2015 09/10/2015 S 120 120 13
04/12/2015 04/11/2015 S 120 120 14
16/11/2015 16/10/2015 S 120 120 14
04/12/2015 04/11/2015 S 120 120 15
Obrigado a todos.
Cezar Moniz
Curtidas 0
Respostas
Isaac Jose
01/12/2015
bom dia amigo trabalho com SQL mais tente algo conforme o código abaixo deve funcionar.
MONTH(DATA) =
(SELECT MONTH(MAX(DATA))
FROM TABELA)
AND YEAR(DATA) =
(SELECT YEAR(MAX(DATA))
FROM TABELA)
MONTH(DATA) =
(SELECT MONTH(MAX(DATA))
FROM TABELA)
AND YEAR(DATA) =
(SELECT YEAR(MAX(DATA))
FROM TABELA)
GOSTEI 0
Alan Mario
01/12/2015
Conheço nada do Firebird, o SQL sei que é parecido com os outros banco de dados, mas cada um possui diferenças pequenas, Isaac pela sua experiencia da para montar essa estrutura de select em qualquer SGDB?
GOSTEI 0
Cezar Moniz
01/12/2015
Alan e Isaac.
Pela "dica" do Isaac já deu para dar uma clareada na solução!
Muito obrigado pelo retorno.
Abs
Pela "dica" do Isaac já deu para dar uma clareada na solução!
Muito obrigado pelo retorno.
Abs
GOSTEI 0
Isaac Jose
01/12/2015
Por nada . se precisar aumente o filtro pelo dia tambem. ai vc estara pegando o maximo de dia o maximo de mes no ano maximo..
Alan trabalho puramente com SQL as vezes Oracla mais acredito que funcione na maioria ja que muitos levam em consideração a logica do SQL.
Alan trabalho puramente com SQL as vezes Oracla mais acredito que funcione na maioria ja que muitos levam em consideração a logica do SQL.
GOSTEI 0
Alan Mario
01/12/2015
O que diferencia são algumas funções que são adicionadas de acordo com as atualizações, para quem não conhece dificulta um pouco mas nada que uma pesquisa não resolva. Obrigado.
GOSTEI 0