首页 > 解决方案 > MS Access SQL 查询

问题描述

我是 SQL 新手,试图显示列中的最大值以及显示同一表中的单独列,但是,我的查询不起作用。

这是我的代码:

    SELECT ProductName, ProductPrice, MAX(ProductPrice) AS MostProfitable
    FROM tblProducts;

我收到此错误:

“您的查询不包括作为聚合函数的一部分的指定表达式 'ProductName'。”

请帮忙!

标签: sqlms-accessaggregate-functions

解决方案


让所有列使用的简单方法ORDER BYTOP

SELECT TOP (1) p.*
FROM tblProducts as p 
ORDER BY p.ProductPrice DESC;

请注意,TOP在 MS Access 中,如果存在平局,则可以返回更多行。如果您只想要一行,则在 中包含一个附加键ORDER BY以防止平局:

ORDER BY p.ProductPrice DESC, p.ProductName;

推荐阅读