🧚 Écoute ! Beekeeper Studio est une interface MySQL rapide, moderne et open source Télécharger
14 mars 2025 Par Matthew Rathbone

Comment sélectionner les N premières lignes dans MySQL

Sélectionner les N premières lignes d’un tableau est une tâche fondamentale quand on travaille avec des bases de données. Dans ce tutoriel, on va voir comment faire dans MySQL avec des exemples concrets.

Avant de continuer ta lecture, je voulais te parler de notre client MySQL moderne, Beekeeper Studio. Ouvre un tableau et il pagine les lignes pour toi, ou fais un clic droit dessus et choisis SQL: Select Top pour obtenir la requête. Il est gratuit pour MySQL, télécharge-le ici.

Utiliser la clause LIMIT

La clause LIMIT de MySQL permet tout simplement d’indiquer le nombre de lignes à renvoyer dans le résultat d’une requête.

Exemple : sélectionner les 5 premières lignes

Imaginons que tu as un tableau nommé employees avec le schéma suivant :

CREATE TABLE employees (
    id INT,
    name VARCHAR(100),
    salary DECIMAL(10, 2)
);

Tu veux sélectionner les 5 employés ayant les salaires les plus élevés, par ordre décroissant.

SELECT id, name, salary 
FROM employees 
ORDER BY salary DESC 
LIMIT 5;

Pourquoi ça marche :

  1. ORDER BY salary DESC trie les lignes du salaire le plus élevé au plus bas.
  2. LIMIT 5 limite le résultat aux 5 premières lignes après le tri.

Résultat attendu :

+----+----------+--------+
| id | name     | salary |
+----+----------+--------+
|  3 | Alice    | 90000  |
|  5 | Bob      | 85000  |
|  2 | Charlie  | 75000  |
|  6 | Diana    | 70000  |
|  4 | Edward   | 68000  |
+----+----------+--------+

Gérer les égalités avec LIMIT

En cas d’égalité, utiliser simplement LIMIT peut donner des résultats incohérents si tu ne gères pas les égalités. Ajoute des colonnes à ORDER BY pour les départager.

Exemple : gérer les égalités avec un tri secondaire

Pour départager les salaires identiques, trie sur l’id de l’employé comme critère secondaire :

SELECT id, name, salary 
FROM employees 
ORDER BY salary DESC, id ASC 
LIMIT 5;

Pourquoi ça marche :

  • Ajouter id ASC garantit qu’en cas d’égalité de salaire, les employés avec l’id le plus petit sont toujours choisis.

Utiliser LIMIT pour la pagination

Au-delà des N premières lignes, on a souvent besoin de paginer les résultats en sélectionnant une plage de lignes précise.

Exemple : sélectionner les 5 lignes suivantes

Pour paginer les résultats et sélectionner les lignes 6 à 10 selon le salaire :

SELECT id, name, salary 
FROM employees 
ORDER BY salary DESC 
LIMIT 5 OFFSET 5;

Pourquoi ça marche :

  • LIMIT 5 indique le nombre de lignes à renvoyer.
  • OFFSET 5 ignore les 5 premières lignes.

Résultat attendu :

Les 5 employés suivants après le top 5 :

+----+---------+--------+
| id | name    | salary |
+----+---------+--------+
|  1 | Frank   | 67000  |
|  7 | Grace   | 64000  |
|  8 | Hannah  | 60000  |
|  9 | Ivan    | 59000  |
| 10 | Jane    | 58000  |
+----+---------+--------+

Conclusion

Sélectionner les N premières lignes dans MySQL avec la clause LIMIT est simple et efficace. En cas d’égalités possibles, assure un ordre de tri stable en ajoutant des colonnes dans l’ORDER BY. Cette technique simple est indispensable pour de nombreuses applications, notamment l’analyse et le reporting, surtout avec de gros volumes de données.

En maîtrisant ces techniques, tu contrôleras mieux la récupération et la manipulation des données dans MySQL.

Beekeeper Studio est une interface MySQL gratuite et open source

J’utilise Beekeeper Studio pour mon travail sur MySQL depuis peu, et c’est vite devenu l’un de mes outils de base de données préférés. L’interface est épurée, moderne et sans distraction, ce qui permet de se concentrer sur ses requêtes sans le fouillis de certains autres outils. - Surendra Singh

Beekeeper Studio est un client MySQL rapide, intuitif et facile à utiliser. Il prend aussi en charge plein d’autres bases de données et fonctionne très bien sur Windows, Mac et Linux.

La version Linux de Beekeeper est 100% complète : rien de bâclé, aucun compromis sur les fonctionnalités.

Ce que les utilisateurs de MySQL disent de Beekeeper Studio

Beekeeper Beekeeper Toujours débutant

J’ai choisi ce programme après des années passées sur phpMyAdmin — c’est comme entrer dans un monde de meilleure qualité ; ici, j’ai vraiment senti qu’on prend soin de l’utilisateur. Le concept, la mise en œuvre, l’expérience au quotidien — je suis sincèrement reconnaissant envers Matthew pour tout cela.

Alex M

Outil fabuleux, l’IDE le plus pratique que j’aie trouvé à ce jour pour administrer des bases Postgres et MySql - ça marche, tout simplement, sans prise de tête :-)