当前位置:  开发笔记 > 数据库 > 正文

在Microsoft Access中从...中选择Top(除了10之外)

如何解决《在MicrosoftAccess中从中选择Top(除了10之外)》经验,为你挑选了2个好方法。

说我有一个查询

SELECT TOP 10 ... FROM ... ORDER BY ...

在Access(好吧,真的是Jet).问题是:如何获得所有其他行... 除了前10名之外的所有内容?



1> Wayne Molina..:

你不能做类似的事吗

SELECT ... FROM ...
WHERE PK NOT IN (SELECT TOP 10 PK FROM ...)
ORDER BY ...

它可能效率不高,但这是我能想到做的事情的唯一方法.AFAIK在SQL中没有"BOTTOM"子句:)



2> BradC..:
SELECT ... FROM ....
WHERE myID NOT IN 
    (SELECT TOP 10 myID FROM ... ORDER BY rankfield)
ORDER BY sortfield

请注意,您的排序顺序可以(如果您愿意)与排名顺序不同.

编辑:另一个想法:如果你已经知道有多少TOTAL行,你可以做(​​假设1000行):

SELECT TOP 990 ... FROM .... ORDER BY sortfield DESC

只需翻转排序,然后取出剩下的部分.

当然,如果你仍然想要原始顺序的结果,你必须做一些愚蠢的事情:

SELECT ... 
FROM (SELECT TOP 990 ... FROM .... ORDER BY sortfield DESC)
ORDER BY sortfield ASC

推荐阅读
贴进你的心聆听你的世界
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有