Luis,
Acredito que você conseguirá resolver esse erro usando um DATEDIFF, como abaixo:
select DATEDIFF(DAY, tblrhgrecepcao.DtRecep, tblrhgtitulos.DataUltimoRegistro) /30
from tblRHGTitulos
inner join tblRHGRecepcao
on tblrhgrecepcao.PK_Recepcao = tblrhgtitulos.FK_tblRHGRecepcaoRecepcao
where tblRHGTitulos.DataUltimoRegistro is not null
Mas eu não entendi a divisão por 30 para fazer o cálculo da média. Acho interessante você usar o a função AVG para isso, como no exemplo que faço abaixo.
CREATE TABLE #Teste
(
Id INT IDENTITY(1,1),
Produto CHAR(1),
Entrada DATETIME,
Saida DATETIME
)
INSERT INTO #Teste (Produto, Entrada, Saida)
VALUES ('A', '2012-05-01', '2012-05-22'),
('A', '2012-05-01', '2012-05-18'),
('A', '2012-05-01', '2012-05-15'),
('B', '2012-05-01', '2012-05-24'),
('B', '2012-05-01', '2012-05-06'),
('B', '2012-05-01', '2012-05-08')
;WITH Media AS
(
SELECT Produto,
DATEDIFF(DAY, Entrada, Saida) QtdDias
FROM #Teste
)
SELECT Produto,
AVG(QtdDias) MediaDias
FROM Media
GROUP BY Produto
No exemplo inseri alguns regitros para dois produtos diferentes em uma temporária, depois calculei a média de dias entre a entrada e saída de cada um.
[]'s
Philipe Souza
E-mail: Philipe.s.souza@hotmail.com