访问SQL:使用MIN()函数和子查询

时间:2016-04-16 14:24:02

标签: sql ms-access

我正在尝试计算一列数据中的第90个百分位数。 MS Access没有PERCENTILE函数,因此我将获取前100个值(总共1000个),然后获取返回值的最小值。但是我在使用MS Access MIN()函数时遇到了一些困难。我的查询目前看起来如下:

SELECT MIN(*) 
FROM (SELECT TOP 100 ([table1].[field1] + [table1].[field2]) FROM [table1]);

这给了我错误:

Syntax error (missing operator) in query expression 'MIN(*'.

为什么我不允许使用带MIN功能的星号?我是否完全错误地计算了这个值?

1 个答案:

答案 0 :(得分:0)

首先,如果你想获得第90个百分点,你需要一个SELECT MIN(val) FROM (SELECT TOP 90 PERCENT ([table1].[field1] + [table1].[field2]) as val FROM [table1] ORDER BY ([table1].[field1] + [table1].[field2]) ASC ) as t;

其次,您需要一个列名:

uint8_t*