Quel est le mot clé LIMIT?
Le mot clé limit est utilisé pour limiter le nombre de lignes renvoyées dans un résultat de requête.
Il peut être utilisé en conjonction avec les commandes SELECT, UPDATE OR DELETE, syntaxe de mot clé LIMIT
La syntaxe du mot clé LIMIT est la suivante
SELECT {fieldname(s) | *} FROM tableName(s) [WHERE condition] LIMIT N;
ICI
- "SELECT {fieldname (s) | *} FROM tableName (s)" est l'instruction SELECT contenant les champs que nous aimerions renvoyer dans notre requête.
- "[Condition WHERE]" est facultative mais lorsqu'elle est fournie, elle peut être utilisée pour spécifier un filtre sur le jeu de résultats.
- "LIMIT N" est le mot-clé et N est n'importe quel nombre commençant à 0, mettre 0 comme limite ne renvoie aucun enregistrement dans la requête. Mettre un nombre, disons 5, renverra cinq enregistrements. Si les enregistrements de la table spécifiée sont inférieurs à N, tous les enregistrements de la table interrogée sont renvoyés dans le jeu de résultats.
Regardons un exemple -
SELECT * FROM members LIMIT 2;
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | credit_ card_ number | |
---|---|---|---|---|---|---|---|---|---|
1 | Janet Jones | Female | 21-07-1980 | NULL | First Street Plot No 4 | Private Bag | 0759 253 542 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
Comme vous pouvez le voir sur la capture d'écran ci-dessus, seuls deux membres ont été renvoyés.
Obtenir une liste de dix (10) membres uniquement à partir de la base de données
Supposons que nous souhaitons obtenir une liste des 10 premiers membres inscrits de la base de données Myflix. Nous utiliserions le script suivant pour y parvenir.
SELECT * FROM members LIMIT 10;
L'exécution du script ci-dessus nous donne les résultats indiqués ci-dessous
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | credit_ card_ number | |
---|---|---|---|---|---|---|---|---|---|
1 | Janet Jones | Female | 21-07-1980 | NULL | First Street Plot No 4 | Private Bag | 0759 253 542 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
3 | Robert Phil | Male | 12-07-1989 | NULL | 3rd Street 34 | NULL | 12345 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
4 | Gloria Williams | Female | 14-02-1984 | NULL | 2nd Street 23 | NULL | NULL | NULL | NULL |
5 | Leonard Hofstadter | Male | NULL | NULL | Woodcrest | NULL | 845738767 | NULL | NULL |
6 | Sheldon Cooper | Male | NULL | NULL | Woodcrest | NULL | 976736763 | NULL | NULL |
7 | Rajesh Koothrappali | Male | NULL | NULL | Woodcrest | NULL | 938867763 | NULL | NULL |
8 | Leslie Winkle | Male | 14-02-1984 | NULL | Woodcrest | NULL | 987636553 | NULL | NULL |
9 | Howard Wolowitz | Male | 24-08-1981 | NULL | SouthPark | P.O. Box 4563 | 987786553 | lwolowitz[at]email.me | NULL |
Notez que seuls 9 membres ont été renvoyés dans notre requête car N dans la clause LIMIT est supérieur au nombre total d'enregistrements dans notre table.
Réécrire le script ci-dessus comme suit
SELECT * FROM members LIMIT 9;
Ne renvoie que 9 lignes dans notre jeu de résultats de requête.
Utilisation de OFF SET dans la requête LIMIT
La valeur OFF SET est également le plus souvent utilisée avec le mot clé LIMIT. La valeur OFF SET nous permet de spécifier la ligne à partir de la récupération des données
Supposons que nous souhaitons obtenir un nombre limité de membres à partir du milieu des lignes, nous pouvons utiliser le mot clé LIMIT avec la valeur de décalage pour y parvenir. Le script ci-dessous récupère les données à partir de la deuxième ligne et limite les résultats à 2.
SELECT * FROM `members` LIMIT 1, 2;
L'exécution du script ci-dessus dans MySQL workbench sur myflixdb donne les résultats suivants.
membership_ number | full_ names | gender | date_of _birth | date_of _registration | physical_ address | postal_ address | contact_ number | credit_ card_ number | |
---|---|---|---|---|---|---|---|---|---|
2 | Janet Smith Jones | Female | 23-06-1980 | NULL | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
3 | Robert Phil | Male | 12-07-1989 | NULL | 3rd Street 34 | NULL | 12345 | This email address is being protected from spambots. You need JavaScript enabled to view it. | NULL |
Quand devons-nous utiliser le mot-clé LIMIT?
Supposons que nous développions l'application qui s'exécute sur myflixdb. Notre concepteur système nous a demandé de limiter le nombre d'enregistrements affichés sur une page à 20 enregistrements par page pour contrer les temps de chargement lents. Comment procéder pour mettre en œuvre le système qui répond à ces exigences des utilisateurs? Le mot-clé LIMIT est utile dans de telles situations. Nous pourrions limiter les résultats renvoyés par une requête à 20 enregistrements uniquement par page.
Résumé
- Le mot clé LIMIT de est utilisé pour limiter le nombre de lignes renvoyées par un jeu de résultats.
- Le nombre LIMIT peut être n'importe quel nombre à partir de zéro (0) vers le haut. Lorsque zéro (0) est spécifié comme limite, aucune ligne n'est renvoyée à partir du jeu de résultats.
- La valeur OFF SET nous permet de spécifier la ligne à partir de la récupération des données
- Il peut être utilisé en conjonction avec les commandes SELECT, UPDATE OR DELETE, syntaxe de mot clé LIMIT