繁体   English   中英

从每个邻域组中选择40个最近的销售MS ID不一定相同的MS Access SQL

[英]Select 40 most recent sales from each neighborhood group MS Access SQL where ID isn't necessarily distinct

我有一个名为Sales的表,其中有PARID, PRICE, SALEDT, SALEVALNBHD列。 我需要每个NBHD都有40个最新SALEDTNBHD PARID唯一标识一个属性,但每个PARID可能有多个销售。 如果我的前40名将给我两行具有相同的PARID ,那么我只想要具有最新SALEDT 在此先感谢您的帮助。

考虑一个相关计数聚合子查询来对每个NBHD的 SalesDT进行排序 ,然后在外部查询过滤器中对小于或等于40的排名进行排序

SELECT main.NBHD, main.PARID, main.PRICE, main.SALEDT, main.SALEVAL 
FROM 
   (SELECT t.NBHD, t.PARID, t.PRICE, t.SALEDT, t.SALEVAL, 
          (SELECT COUNT(*) FROM mytable sub
           WHERE sub.NBHD = t.NBHD
           AND sub.SALEDT >= t.SALEDT) AS rank
    FROM mytable t) AS main
WHERE main.rank <= 40
ORDER NBHD, PARID, SALEDT DESC

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM