SELECT SUM(orders.quantity) AS num,fName,surname FROM author INNER JOIN book ON author.aID = book.authorID;
解决方法
错误是因为fName包含在SELECT列表中,但不包括在GROUP BY子句中,并且不是聚合函数(Count(),Min(),Max(),Sum()等)的一部分)
您可以通过在GROUP BY中包含fName来解决该问题.但是,你会面对与姓相同的问题.所以把这两个都放在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).但是,订单未包含在查询的FROM部分中,因此您必须先将其包含在Sum()之一的字段之前.