Mithilfe der Eigenschaft Spitzenwerte können Sie eine angegebene Anzahl Datensätze oder einen Prozentsatz von Datensätzen zurückgeben, die den von Ihnen festgelegten Kriterien entsprechen. Beispielsweise können Sie die 10 höchsten oder die 25 Prozent höchsten von allen Werten in einem Feld zurückgeben.
Hinweis: Die Spitzenwerte-Eigenschaft betrifft nur Anfüge-, Tabellenerstellungs- und Auswahlabfragen.
Einstellung
Die Einstellung der Eigenschaft Spitzenwerte ist ein ganzzahliger Wert, der die genaue Anzahl der zurückzugebenden Werte angibt, oder eine Zahl mit einem darauf folgenden Prozentzeichen (%), die den Prozentsatz der zurückzugebenden Datensätze angibt. Um beispielsweise die 10 höchsten Werte zurückzugeben, legen Sie die Eigenschaft Spitzenwerte auf 10 fest; um die höchsten 10 Prozent der Werte zurückzugeben, legen Sie die Eigenschaft Spitzenwerte auf 10% fest.
Diese Eigenschaft kann nicht direkt im Code festgelegt werden. Sie wird in der SQL-Ansicht des Abfragefensters mithilfe einer TOP n- oder einer TOP n PERCENT-Klausel in der SQL-Anweisung festgelegt.
Ferner können Sie die Spitzenwerte-Eigenschaft mithilfe des Eigenschaftsblatts der Abfrage oder dem Feld Spitzenwerte unter Extras auf der Registerkarte Entwurf festlegen.
Hinweis: Die Eigenschaft Spitzenwerte auf dem Eigenschaftsblatt der Abfrage und auf der Registerkarte Entwurf ist ein Kombinationsfeld, das eine Liste mit Werten und Prozentwerten enthält. Sie können einen dieser Werte auswählen oder eine beliebige gültige Einstellung im Feld eingeben.
Hinweise
Normalerweise verwenden Sie die Spitzenwerte-Eigenschaftseinstellung in Kombination mit sortierten Feldern. Das Feld, für das Sie die Spitzenwerte anzeigen möchten, sollte das äußerst linke Feld sein, für das das Feld Sortieren im Abfrageentwurfsbereich ausgewählt ist. Eine aufsteigende Sortierreihenfolge gibt die untersten Datensätze, eine absteigende Sortierreihenfolge die obersten Datensätze zurück. Wenn Sie angeben, dass eine bestimmte Anzahl Datensätze zurückgegeben werden soll, werden alle Datensätze, deren Wert mit dem des letzten Datensatzes übereinstimmen, ebenfalls zurückgegeben.
Nehmen wir beispielsweise an, dass eine Menge von Mitarbeitern die folgenden Umsätze erzielt hat.
Umsatz |
Verkäufer |
90.000 |
Fiegler |
80.000 |
Plate |
70.000 |
Dressler |
70.000 |
Baar |
60.000 |
Berroth |
50.000 |
Bühlmann |
Wenn Sie die Eigenschaft Spitzenwerte auf 3 festlegen, bei absteigender Sortierreihenfolge nach dem Feld "Umsätze", gibt Microsoft Office Access 2007 die folgenden vier Datensätze zurück.
Umsatz |
Verkäufer |
90.000 |
Fiegler |
80.000 |
Plate |
70.000 |
Dressler |
70.000 |
Baar |
Hinweis: Um die obersten oder untersten Werte ohne Ausgabe von Duplikatwerten zurückzugeben, legen Sie die Eigenschaft KeineDuplikate auf dem Eigenschaftsblatt der Abfrage auf "Ja" fest.
Beispiel
Das folgende Beispiel weist eine SQL-Zeichenfolge, die die 10 teuersten Produkte zurückgibt, der Eigenschaft Datensatzquelle für ein Formular zu, das die zehn teuersten Produkte anzeigt.
Dim strGetSQL As String
strGetSQL = "SELECT TOP 10 Products.[ProductName] " _ & "AS TenMostExpensiveProducts, " _ & "Products.UnitPrice " _ & "FROM Products " _ & "ORDER BY Products.[UnitPrice] DESC;" Me.RecordSource = strGetSQL