微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sql – MS-Access – 您尝试执行不包含指定聚合函数的查询

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()等)的一部分)

您可以通过在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()之一的字段之前.

如果您有Access可用,请在查询设计器中构建查询.它可以帮助您了解可能的功能,并应用正确的Access sql语法.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐