Venu Gopal Mulavana Kayamkulam Ответов: 2

Ошибка, отображаемая в предложении group by


Пока я выполняю запрос, его отображение похоже на приведенную ниже ошибку

"Вы попытались выполнить запрос, который не включает указанное выражение 'goldweight' как часть агрегатной функции."

Что я уже пробовал:

DataFilterCondition = " Where pi.pledgedate >= @Me.dtpAccountFrom.Value.Date And pi.pledgedate <= @Me.dtpAccountTo.Value.Date And p.redeemed = 1 "


DataFilterQuery = "Select pi.itemname, pi.goldweight, pi.stoneweight, pi.nos " & _
            "From (pledgeritem pi Inner Join pledger p On pi.pledgeno = p.pledgeno) " & DataFilterCondition & " Group By pi.itemname Order By pi.itemname"

2 Ответов

Рейтинг:
5

Wendelius

На данный момент Вы вообще не делаете никакой агрегации так что GROUP BY оговорка кажется излишней. Либо уберите его

DataFilterQuery = "Select pi.itemname, pi.goldweight, pi.stoneweight, pi.nos " & _
            "From (pledgeritem pi Inner Join pledger p On pi.pledgeno = p.pledgeno) " & DataFilterCondition & " Order By pi.itemname"

или добавьте нужные агрегаты в оператор, например что-то вроде
DataFilterQuery = "Select pi.itemname, sum(pi.goldweight), sum(pi.stoneweight), sum(pi.nos) " & _
            "From (pledgeritem pi Inner Join pledger p On pi.pledgeno = p.pledgeno) " & DataFilterCondition & " Group By pi.itemname Order By pi.itemname"


Maciej Los

5ed!

Рейтинг:
2

OriginalGriff

Видеть здесь: SQL GROUP By и ошибка "имя столбца недопустимо в списке выбора, потому что..." [^]
Сообщение об ошибке отличается в доступе, но причина та же.


Maciej Los

5ed!