Я пытаюсь создать запрос, который группирует и суммирует два разных поля для одного и того же идентификатора. Затем я пытаюсь извлечь только те записи, которые отличаются в том случае, если сгруппированное итоговое значение отличается от итогового итогового значения.
Например - сумма ([EstimatedEmployeesAtLocation]) должна равняться сгруппированному Estimatedtotalemployees, одинаковому для каждогозапись.
Вот как будут выглядеть три записи
ID 1,1,1
Estimatedtotalemployees 10,10,10
EstimatedEmployeesAtLocation 6,2,1
Я знаю, что проблема заключается в использовании агрегатной функции в предложении where, потому что запрос работает, пока я не добавлю кудапункт. Но я не знаю правильный синтаксис. Кто-то может посоветовать, пожалуйста?
select ID, Estimatedtotalemployees, sum([EstimatedEmployeesAtLocation]) emploc
from Rawdata
where sum([EstimatedEmployeesAtLocation]) <> EstimatedTotalEmployees
group by policyNumber, EstimatedTotalEmployees
Это сообщение об ошибке. Агрегат может не отображаться в предложении WHERE, если он не входит в подзапрос, содержащийся в предложении HAVING или списке выбора, а столбец агрегируется. это внешняя ссылка. Я только начинаю использовать SQL помимо базовых запросов, поэтому любая помощь очень ценится -