SELECT SUM(orders.quantity) AS num, fName, surname
FROM author
INNER JOIN book ON author.aID = book.authorID;
我不断收到错误消息:“您试图执行一个不包含指定表达式"fName"作为聚合函数一部分的查询。我该怎么办?
答案
错误是因为fName
包含在SELECT
列表,但未包含在GROUP BY
子句并且不是聚合函数的一部分(Count()
,Min()
,Max()
,Sum()
, ETC。)
您可以通过包含来解决该问题fName
在一个GROUP BY
。surname
。GROUP BY
:
SELECT
fName,
surname,
Count(*) AS num_rows
FROM
author
INNER JOIN book
ON author.aID = book.authorID;
GROUP BY
fName,
surname
注意我用过Count(*)
你想去的地方SUM(orders.quantity)
。orders
不包含在FROM
查询的部分,因此您必须先包含它,然后才能Sum()
其领域之一。
如果您有可用的 Access,请在查询设计器中构建查询。