# SQL SELECT TOP – So wählen Sie Datensätze gezielt aus

Mit SQL `SELECT TOP` reduzieren Sie Datenanalysen auf ausgewählte Datensätze in Spalten und Tabellen, die Sie untersuchen möchten. Indem Sie die **Anzahl der auszugebenden Datensätze begrenzen**, optimieren Sie die Performance und schonen Ressourcen im Umgang mit sehr komplexen Datenbanken.

## Was ist SQL `SELECT TOP`?

Im Umgang mit der Datenbanksprache [SQL](https://www.ionos.at/digitalguide/server/knowhow/was-ist-sql/) stehen Ihnen verschiedene Werkzeuge wie [SQL-Befehle](https://www.ionos.at/digitalguide/server/konfiguration/sql-befehle/), [SQL-Operatoren](https://www.ionos.at/digitalguide/server/konfiguration/sql-operatoren/) und SQL-Funktionen zur Verfügung. Je nach Anforderung können Sie damit Datensätze durchsuchen, analysieren, ändern oder manipulieren. Insbesondere bei sehr großen Datensätzen mit tausenden Einträgen bietet es sich für effiziente Abfragen an, die **Zahl der Ausgabeergebnisse zu beschränken**. Hierzu nutzen Sie den Befehl SQL `SELECT TOP`.

Als Kombination aus [SQL SELECT](https://www.ionos.at/digitalguide/server/konfiguration/sql-select/) mit dem Schlüsselwort `TOP` handelt es sich um eine Funktion, mit der Sie die **Anzahl der Ergebnisdaten** auf eine gewünschte Anzahl limitieren. Auf diese Weise reduzieren Sie Ergebnisse auf die relevantesten Einträge und optimieren die Lesbarkeit und Aussagekraft der Analyse. Beachten Sie in diesem Zusammenhang, dass SQL `SELECT TOP` nicht in allen Datenbanken funktioniert. Es gibt daher die alternativen Befehle `LIMIT`, `FETCH FIRST` und `ROWNUM`.

Tipp Entdecken Sie die wichtigsten Grundlagen und Funktionen in unserer [SQL-Einführung mit Beispielen](https://www.ionos.at/digitalguide/server/konfiguration/sql-einfuehrung-mit-beispielen/).

## Die Syntax von `SELECT TOP` erklärt

Die einfache `SELECT TOP`-Syntax sieht wie folgt aus:

```sql
SELECT  TOP  n SpalteA, SpalteB, …
FROM  Tabelle
```

Diese Parameter kommen zum Einsatz:

- `SELECT TOP`: Mit dem Befehl `SELECT TOP` definieren Sie die Anzahl der Ergebnisse sowie die Spalten, aus denen Sie Datensätze abrufen möchten. Geben Sie die konkrete Spaltenbezeichnung nach der Anzahl der gewünschten Ergebnisse (n) an oder nutzen Sie einen Asterisk `*`, um alle Datensätze in der Tabelle auszuwählen.
- `FROM`: Legt fest, in welcher Tabelle Sie Spalten und Datensätze prüfen möchten.

Mit weiteren optionalen Klauseln und Operatoren können Sie die Ausgabeergebnisse präzisieren:

- `WHERE`: Mit der Klausel [SQL WHERE](https://www.ionos.at/digitalguide/server/konfiguration/sql-where/) legen Sie Bedingungen fest, die relevante Datensätze erfüllen müssen. Irrelevante Ergebnisse werden ausgeschlossen.
- `ORDER BY`: Mit dem Befehl [SQL ORDER BY](https://www.ionos.at/digitalguide/server/konfiguration/sql-order-by/) und den Anweisungen `ASC` oder `DESC` legen Sie fest, ob Sie die Ergebnisse in auf- oder absteigender Reihenfolge sortieren möchten.

## Für diese Anwendungen eignet sich der `SELECT TOP`-Operator

Grundsätzlich eignet sich SQL `SELECT TOP`, um Daten zu vergleichen, zu analysieren oder nach Größen und Mengen zu filtern. Praktische Anwendungsfälle aus verschiedenen Branchen umfassen unter anderem:

- Auswahl an Kundinnen und Kunden mit höchster Anzahl an Bestellungen abrufen
- Die ersten zehn Teams mit den erfolgreichsten Marketingkampagnen filtern
- Die ersten 50 größten Transaktionen anzeigen, um verdächtige Finanzbewegungen zu prüfen
- Die zehn Websites mit den meisten Zugriffen in einem Monat anzeigen
- Vielversprechende Kundinnen und Kunden anhand von demografischen, geografischen und finanziellen Daten analysieren
- Lagerprüfung durch Abrufen der zehn Produkte mit niedrigstem Lagerbestand
- Kaufverhalten anhand der am meisten bestellten oder angesehenen Produkte prüfen
- Risikofaktoren bei Patientinnen und Patienten anhand relevanter Testergebnisse, Symptome oder Vorerkrankungen bestimmen
- Lieferanten mit den kürzesten Lieferzeiten oder Lieferrouten filtern

Tipp Entdecken Sie individuelle Server- und Hosting-Angebote für Ihre Web-Projekte und Datenbanken mit [SQL-Server-Hosting](https://www.ionos.at/cloud/sql-server-hosting/ "SQL-Server-Hosting von IONOS") von IONOS. Verlassen Sie sich auf Datenschutz und Datensicherheit nach deutschen Standards.

## Praktische Beispiele für SQL `SELECT TOP`

Um zu veranschaulichen wie SQL `SELECT TOP` funktioniert, erklären wir Ihnen die Anweisung an zwei praktischen Anwendungsbeispielen.

### Die letzten zehn Bestellungen anzeigen

Sie möchten in einer Tabelle „Bestellungen“ nur die aktuellen zehn Bestellungen anzeigen lassen. Gehen Sie wie folgt vor:

```sql
SELECT  TOP  10  *
FROM  Bestellungen
ORDER BY  Bestelldatum DESC
```

Mit **Zusätzen** wie `ORDER BY` können Sie die Ergebnisse nach möglichen Parametern wie Bestellmenge, Preis oder anderen Merkmalen sortieren.

### Kundinnen und Kunden mit den meisten Bestellungen

Sie möchten in einer Tabelle „Bestellungen“ nur die ersten zehn Kunden mit den meisten Bestellungen abrufen. Gehen Sie wie folgt vor:

```sql
SELECT TOP 10 Kundenname, KundenId, COUNT(*) AS Gesamtbestellmenge
FROM Bestellungen
GROUP BY Kundenname, KundenId
ORDER BY Gesamtbestellmenge DESC
```

Mit der Funktion `COUNT` zählen Sie alle Bestellungen von Kundinnen und Kunden mit zugehörigem Namen und Kunden-ID zusammen, um darauf basierend häufige Bestellungen zuzuordnen.

## Alternativen zu SQL `SELECT TOP`

Je nach System, das Sie für Ihre [Datenbanken](https://www.ionos.at/digitalguide/hosting/hosting-technik/datenbanken/) verwenden, kann es eine **alternative Anweisung für die Eingrenzung der Ergebnisse** erfordern. Prüfen Sie daher, ob Ihr Datenbanksystem SQL `SELECT TOP` oder eine andere Funktion unterstützt. Zur besseren Übersicht finden Sie eine Auflistung von SQL `SELECT TOP` und der Alternativen nach [Datenbankmanagementsystem](https://www.ionos.at/digitalguide/hosting/hosting-technik/datenbankmanagementsystem-dbms-erklaert/) (DMS) unterschieden:

<table>
  <thead>
    <tr>
      <th>SQL-Funktion</th>
      <th>DMS</th>
      <th>Funktion</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>`SELECT TOP`</td>
      <td>SQL Server</td>
      <td>Begrenzt Ergebnisse auf n</td>
    </tr>
    <tr>
      <td>`LIMIT`</td>
      <td>MySQL</td>
      <td>Beschränkt Ergebnisse auf n</td>
    </tr>
    <tr>
      <td>`ROWNUM` oder `ROWS`</td>
      <td>Oracle</td>
      <td>Legt die Anzahl der Ergebniszeilen fest</td>
    </tr>
    <tr>
      <td>`OFFSET` + `FETCH`</td>
      <td>Oracle, MySQL</td>
      <td>Ergänzen die `ORDER BY`-Klausel und legen die Anzahl der Datensätze in Ergebnissen fest</td>
    </tr>
    <tr>
      <td>`FETCH FIRST n ROWS ONLY`</td>
      <td>Oracle</td>
      <td>Begrenzt die Anzahl der Ergebniszeilen auf n</td>
    </tr>
  </tbody>
</table>


This is a markdown version of: [https://www.ionos.at/digitalguide/server/konfiguration/sql-select-top/](https://www.ionos.at/digitalguide/server/konfiguration/sql-select-top/) for AI/LLM consumption.