# SQL SELECT TOP : afficher les enregistrements sélectionnés

Avec SQL `SELECT TOP`, vous limitez les analyses de données aux enregistrements sélectionnés dans les colonnes et les tables de votre choix. En limitant le **nombre d’enregistrements à afficher**, vous optimisez les performances et préservez les ressources lors de l’utilisation de bases de données très complexes.

## Qu’est-ce que `SELECT TOP` en SQL ?

Lorsque vous utilisez le langage de base de données [SQL](https://www.ionos.fr/digitalguide/serveur/know-how/definition-de-sql/), vous disposez de différents outils comme les [commandes SQL](https://www.ionos.fr/digitalguide/serveur/configuration/commandes-sql/), les fonctions et les [opérateurs SQL](https://www.ionos.fr/digitalguide/serveur/configuration/les-operateurs-sql/). Selon les besoins, vous pouvez ainsi rechercher, analyser, modifier ou manipuler des jeux de données. Pour les très grands ensembles de données avec des milliers d’entrées, il est particulièrement utile de limiter le **nombre de résultats de sortie** pour des requêtes efficaces. Pour cela, utilisez la commande SQL `SELECT TOP`.

La combinaison de [SQL `SELECT`](https://www.ionos.fr/digitalguide/serveur/configuration/sql-select/) avec le mot-clé `TOP` est une fonction qui vous permet de limiter le **nombre de données de résultat** à un nombre défini. De cette manière, vous réduisez les résultats aux entrées les plus pertinentes et optimisez la lisibilité et la pertinence de l’analyse. Notez que SQL `SELECT TOP` ne fonctionne pas dans toutes les bases de données ; il existe également les commandes alternatives `LIMIT`, `FETCH FIRST` et `ROWNUM`.

Conseil Découvrez les principales bases et fonctions dans notre [introduction à SQL avec exemples](https://www.ionos.fr/digitalguide/serveur/configuration/introduction-a-sql-a-laide-dexemples/).

## La syntaxe de `SELECT TOP` en SQL expliquée

La syntaxe simple de `SELECT TOP` se présente comme suit :

```sql
SELECT TOP  n colonneA, colonneB, ...
FROM  Table
```

Ces paramètres sont utilisés :

- `SELECT TOP` : avec la commande `SELECT TOP`, vous définissez le nombre de résultats ainsi que les colonnes dans lesquelles vous souhaitez extraire des enregistrements. Indiquez le nom de la colonne en fonction du nombre de résultats souhaités (n) ou utilisez un astérisque `*` pour sélectionner tous les enregistrements de la table.
- `FROM` : définit la table dans laquelle vous souhaitez vérifier les colonnes et les enregistrements.

D’autres clauses et opérateurs facultatifs vous permettent de préciser les résultats de sortie :

- `WHERE` : avec la clause [SQL `WHERE`](https://www.ionos.fr/digitalguide/serveur/configuration/sql-update/), vous définissez les conditions que doivent remplir les enregistrements pertinents. Les résultats non pertinents sont exclus.
- `ORDER BY` : avec la clause [SQL `ORDER BY`](https://www.ionos.fr/digitalguide/serveur/configuration/sql-like/) et les instructions `ASC` ou `DESC`, vous déterminez si vous souhaitez trier les résultats dans l’ordre croissant ou décroissant.

## `SELECT TOP` en SQL : pour quelle utilisation l’opérateur est-il approprié ?

En principe, SQL `SELECT TOP` convient pour comparer des données, les analyser ou les filtrer en fonction de leur taille ou de leur quantité. Les cas d’application dans différents secteurs comprennent entre autres :

- Récupérer une sélection de clients avec le plus grand nombre de commandes
- Filtrer les dix premières équipes ayant mené les campagnes de marketing les plus efficaces
- Afficher les 50 premières transactions les plus importantes pour vérifier les mouvements financiers suspects
- Afficher les dix sites Web les plus consultés en un mois
- Analyser les clients prometteurs à l’aide de données démographiques, géographiques et financières
- Vérifier les stocks en récupérant les dix produits dont les stocks sont les plus bas
- Vérifier le comportement d’achat à l’aide des produits les plus commandés ou les plus consultés
- Déterminer les facteurs de risque chez les patients sur la base de résultats d’analyses, de symptômes ou de maladies antérieures pertinents
- Filtrer les fournisseurs ayant les délais ou les itinéraires de livraison les plus courts

Conseil Découvrez des offres de serveur et d’hébergement personnalisées pour vos projets Web et vos bases de données avec l’[hébergement SQL](https://www.ionos.fr/cloud/hebergement-serveur-sql "Hébergement SQL pour les bases de données MSSQL, MySQL et MariaDB | IONOS") de IONOS. Choisissez IONOS et comptez sur la protection des données selon les normes allemandes.

## Exemples pratiques de SQL `SELECT TOP`

Pour illustrer le fonctionnement de SQL `SELECT TOP`, nous vous expliquons l’instruction à l’aide de deux exemples d’application pratiques.

### Afficher les dix dernières commandes

Vous souhaitez afficher uniquement les dix dernières commandes dans une table « Commandes ». Procédez comme suit :

```sql
SELECT  TOP  10 *
FROM  Commandes
ORDER BY  Date de commande DESC
```

Les **suppléments** tels que `ORDER BY` permettent de trier les résultats en fonction de paramètres possibles tels que la quantité commandée, le prix ou d’autres caractéristiques.

### Trouver les clients avec le plus grand nombre de commandes

Vous souhaitez récupérer les dix premiers clients ayant passé le plus de commandes dans une table « Commandes ». Procédez comme suit :

```sql
SELECT TOP 10 Nom du client, ID du client, COUNT(*) AS Total des commandes
FROM Commandes
GROUP BY Nom du client, ID du client
ORDER BY Quantité totale des commandes DESC
```

La fonction `COUNT` permet d’additionner toutes les commandes de clients avec le nom et l’ID client correspondants, afin d’attribuer des commandes fréquentes sur cette base.

## Alternatives à SQL `SELECT TOP`

Selon le système que vous utilisez pour vos [bases de données](https://www.ionos.fr/digitalguide/hebergement/aspects-techniques/base-de-donnees/), il peut être nécessaire d’utiliser une **instruction alternative pour limiter les résultats**. Vérifiez donc si votre système de base de données supporte SQL `SELECT TOP` ou une autre fonction. Pour une meilleure vue d’ensemble, nous vous présentons une liste de SQL `SELECT TOP` et des alternatives selon les différents [systèmes de gestion de base de données](https://www.ionos.fr/digitalguide/hebergement/aspects-techniques/systeme-de-gestion-de-base-de-donnees-sgbd/) (SGBD) :

<table>
  <thead>
    <tr>
      <th>Fonction SQL</th>
      <th>SGBD</th>
      <th>Caractéristique</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>`SELECT TOP`</td>
      <td>Serveur SQL</td>
      <td>Limite les résultats à `n`</td>
    </tr>
    <tr>
      <td>`LIMIT`</td>
      <td>MySQL</td>
      <td>Limite les résultats à `n`</td>
    </tr>
    <tr>
      <td>`ROWNUM` ou `ROWS`</td>
      <td>Oracle</td>
      <td>Définit le nombre de lignes de résultats</td>
    </tr>
    <tr>
      <td>`OFFSET` + `FETCH`</td>
      <td>Oracle, MySQL</td>
      <td>Complètent la clause `ORDER BY` et définissent le nombre d’enregistrements dans les résultats</td>
    </tr>
    <tr>
      <td>`FETCH FIRST n ROWS ONLY`</td>
      <td>Oracle</td>
      <td>Limite le nombre de lignes de résultats à `n`</td>
    </tr>
  </tbody>
</table>


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