Это мой оператор SQL, который работает с использованием datediff:
SELECT SUM(b134_nettpay) AS Total, b134_rmcid, b134_recdate
FROM B134HREC
WHERE datediff (dd, '2006-05-05', getdate()) > 90
GROUP BY b134_rmcid, b134_recdate
ORDER BY b134_recdate DESC, b134_rmcid
Мне нужно заменить жестко закодированную дату «2006-05-05» на MAX (b134_recdate) следующим образом:
SELECT SUM(b134_nettpay) AS Total, b134_rmcid, b134_recdate
FROM B134HREC
where datediff (dd, MAX(b134_recdate), getdate()) > 90
GROUP BY b134_rmcid, b134_recdate
ORDER BY b134_recdate DESC, b134_rmcid
Но я получаю это сообщение об ошибке:
Агрегат не может отображаться в предложении WHERE, если только он не находится в подзапросе, содержащемся в предложении HAVING, или в списке выбора, а агрегируемый столбец является внешней ссылкой.
Любая идея, как исправить мою инструкцию SQL?