MS Access查询中的计数功能

时间:2016-08-04 13:00:37

标签: ms-access

在表格中,我有以下列,同一列将在查询

VIN            Person Number         Base price    
12                ABC                100    
36                ABC                200
71                DEF                100
44                ABC                500
66                698                300
etc               etc                etc

新栏目(第4栏)用于奖励,如果人数超过2,则应用基本价格的0.4%,如果为2,则为0.3%。如何在查询中构建它。

1 个答案:

答案 0 :(得分:0)

使用“计数”功能计算人数出现的频率。 我建议使用单独的折扣表来存储折扣百分比。 通过这种方式,您可以保持折扣百分比的灵活性,远离硬编码。

SELECT x.VIN, x.[Person Number], x.[Base Price], 
IIF((SELECT Count([Person Number]) FROM yourtable WHERE [Person Number] = x.[Person Number]) >=2, x.[Base Price]*0.96, x.[Base Price]*0.98) AS NettPrice
FROM yourtable AS x;