CONSULTA DATA ANO

IRENKO 19/11/2012 15:30:47
#414454
mSql = [Ô] SELECT Year(Data) AS Ano, Sum([Dados Consulta3].ValorSemImposto) AS Soma [Ô] + _
[Ô] FROM [Dados Consulta3] [Ô] + _
[Ô] WHERE ((Not ([Dados Consulta3].Data) Is Null)) And Year(Data) > [ô]1997[ô][Ô] + _
[Ô] GROUP BY Year(Data) [Ô] + _
[Ô] ORDER BY Year(Data) DESC [Ô]

Pessoal, a SQL acima eu seleciono os dados dos últimos 15 anos, ou seja, maior que 1997, mas eu queria modifica-la trazendo sempre os últimos 15 anos sem precisar informar o ano de partida. Existe um meio para isso?
JONATHANSTECKER 19/11/2012 15:37:21
#414455
Resposta escolhida
Retire 15 anos do ano atual...
YEAR(NOW()) - 15

Veja se funciona...
mSql = [Ô] SELECT Year(Data) AS Ano, Sum([Dados Consulta3].ValorSemImposto) AS Soma [Ô] + _
[Ô] FROM [Dados Consulta3] [Ô] + _
[Ô] WHERE ((Not ([Dados Consulta3].Data) Is Null)) And Year(Data) > YEAR(NOW()) - 15[Ô] + _
[Ô] GROUP BY Year(Data) [Ô] + _
[Ô] ORDER BY Year(Data) DESC [Ô]
COLDBURN 19/11/2012 17:25:21
#414463
Matou a pau, é isso aí.

No Postgres ou no MySQL, eu faria com INTERVAL.

Ex.:
(...) data <= variavel_da_data - INTERVAL [ô]15 years[ô] (...)

Abraço,

Cold.
IRENKO 20/11/2012 07:15:16
#414481
Valeu !!
JONATHANSTECKER, era isso q eu precisava.
Tópico encerrado , respostas não são mais permitidas