访问的SQL排名声明 - 结果中的重复项

时间:2014-04-05 16:22:34

标签: sql ms-access ranking

我有一个简单的Access表[Parts]来存储数据

Part#  CYTD_SALES    CUST_NUM

我需要分别根据每个CUST_NUM(客户编号)的CYTD销售额(当前年度销售额)对零件进行排名

我使用以下声明:

等级:

(SELECT Count (*)  
 FROM [Parts] as R 
 Where [CYTD Sales] > [Parts].[CYTD Sales] 
   And > CUST_NUM= [Parts].[CUST_NUM] ) + 1

当同一客户花费相同数量超过1份时遇到了这种情况,所以排名看起来像这样

1 2 4 4 5 

而不是

1 2 3 4 5 

有没有办法写一个不允许同一个客户排名相同的陈述?

谢谢!

1 个答案:

答案 0 :(得分:0)

由于Part#字段对每个客户都是唯一的,因此以下是对我有用的声明:

(SELECT Count (*)  
 FROM [Parts] as R 
 Where ([CYTD Sales] > [Parts].[CYTD Sales] Or 
([CYTD Sales]=[Parts].[CYTD Sales] And
 [Part#]> [Parts].[Part#]))
   And > CUST_NUM= [Parts].[CUST_NUM] ) + 1