Prezados estou com uma duvida, seguinte na Sql Abaixo eu preciso que me retorne um determinado campo do mes anterior. estou tentando fazer com o case, porem ele me retorna o valor do mes atual, vejam se podem me ajudar..
SELECT I.PATRIMONIO,
I.DESCRICAO,F.NOME,I.NUMERODOCUMENTO,DTAQUISICAO,
I.VRAQUISICAO,I2.DEPRECINDICE,12.DEPMESCORRIGADA,
I2.DATA,
Depreciacaoanterior =Sum(Case When (Month(I2.DATA) = MONTH(GetDate())) /*and (Year(I2.DATA) = Year(GetDate()))*/ Then IsNull(I2.DEPRECINDICE, 0) End)
FROM IBEM AS I
INNER JOIN FCFO AS F ON F.CODCOLIGADA = I.CODCOLIGADA AND F.CODCFO = I.CODFORNEC
INNER JOIN IRAZAO AS I2 ON I2.CODCOLIGADA = I.CODCOLIGADA AND I2.CODBEM = I.CODBEM
WHERE I.PATRIMONIO = '00486'
AND I2.DATA = '2011-11-30'
GROUP BY
I.PATRIMONIO,
I.DESCRICAO,F.NOME,I.NUMERODOCUMENTO,DTAQUISICAO,
I.VRAQUISICAO,I2.DEPRECINDICE,I2.DATA
obrigado a todos