Wählen Sie Top (alle 10) von ... in Microsoft Access
Sagen, ich habe eine Abfrage
SELECT TOP 10 ... FROM ... ORDER BY ...
in Access (gut, wirklich Jet). Die Frage ist: wie bekomme ich alle anderen Zeilen... alles außer die top 10?
InformationsquelleAutor der Frage Joel Spolsky | 2009-02-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Konnte Sie nicht etwas tun wie
könnte es nicht sein, dass eine effiziente aber das ist der einzige Weg, aus der Spitze von meinem Kopf, ich kann denken, etwas zu tun. AFAIK gibt es keine "BODEN-Klausel" in SQL 🙂
InformationsquelleAutor der Antwort Wayne Molina
Beachten Sie, dass Ihre Reihenfolge sortiert könnte, (wenn Sie möchten) anders sein als Ihre Rang Ordnung.
Bearbeiten: Andere Idee: Wenn Sie bereits wusste, wie viele Zeilen waren es, die man tun könnte (vorausgesetzt, 1000 Zeilen):
Spiegeln nur die Art und nehmen den restlichen Teil.
Natürlich, wenn Sie noch wollte, dass die Ergebnisse in der ursprünglichen Reihenfolge, die Sie haben würde, etwas dummes zu tun wie:
InformationsquelleAutor der Antwort BradC
Können Sie erstellen, die ein Feld Rang (Möglichkeiten zur Erstellung von Rang-Spalte) und filter off: wo Rang >10
InformationsquelleAutor der Antwort JeffO
Diese es etwas, das ist oft besser getan, auf der client-Seite, sondern auf dem DBMS, d.h. Sie Holen alle die Zeilen der Tabelle in ADO Classic recordset dann die Filter-Eigenschaft verwenden, um entfernen Sie die 10 Zeilen basierend auf Kriterien, oder Sortieren Sie dann gesetzt ist, dann überspringen Sie den ersten/letzten 10 Zeilen-oder Seitenlänge als angemessen, dann überspringen Sie den ersten/letzten Seite, etc. Es kommt nicht nur auf die Anzahl der Zeilen, sondern auch die Ziel-Anwendung, wie z.B. ich weiß, dass, wenn das ist die Quelle der Daten für eine MS Access-Bericht werden anschließend abfiltrieren des unerwünschten Zeilen können eine Menge ärger.
InformationsquelleAutor der Antwort onedaywhen