Maison  >  Article  >  base de données  >  MySQL a-t-il une requête principale ?

MySQL a-t-il une requête principale ?

anonymity
anonymityoriginal
2019-05-08 17:10:393561parcourir

Il n'y a pas de requête supérieure dans MySQL, mais vous pouvez utiliser une requête limite pour obtenir le même effet. La syntaxe est "SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset".

MySQL a-t-il une requête principale ?

Les amis qui ont l'habitude d'accéder au serveur mssql peuvent être habitués à utiliser la forme d'instruction select top n lors de l'interrogation des N premiers enregistrements avec mysql, ici Pour expliquer , MySQL n'a pas cette syntaxe. Mysql utilise limit pour implémenter les fonctions associées, et la fonction est plus puissante, BON. Ce qui suit est une explication détaillée de l'utilisation de limit dans MySQL :

Syntaxe :

SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset

La clause LIMIT peut être utilisée pour forcer l'instruction SELECT à renvoyer un nombre spécifié d'enregistrements. . LIMIT accepte un ou deux arguments numériques. Le paramètre doit être une constante entière.

Si deux paramètres sont donnés, le premier paramètre spécifie le décalage de la première ligne d'enregistrement renvoyée et le deuxième paramètre spécifie le nombre maximum de lignes d'enregistrement renvoyées.

Le décalage de la ligne d'enregistrement initiale est de 0 (au lieu de 1) : Pour des raisons de compatibilité avec PostgreSQL, MySQL supporte également la syntaxe : LIMIT # OFFSET #.
mysql> SELECT * FROM table LIMIT 5,10; //Récupère les lignes d'enregistrement 6 à 15, notez que 10 est le décalage
//Afin de récupérer toutes les lignes d'un certain décalage jusqu'à la fin de l'enregistrement set Record row, vous pouvez spécifier que le deuxième paramètre soit -1 :
mysql> SELECT * FROM table LIMIT 95,-1; // Récupère la ligne d'enregistrement 96-last.
//Si un seul paramètre est donné , il indique le nombre maximum de lignes d'enregistrement renvoyées :
mysql> SELECT * FROM table LIMIT 5; //Récupérer les 5 premières lignes d'enregistrement//En d'autres termes, LIMIT n est équivalent à LIMIT 0,n.
Si vous souhaitez obtenir les dernières données, vous pouvez ajouter une commande par identifiant desc

mysql ne prend pas en charge la syntaxe de select top n. Vous devez utiliser ceci à la place :
select * from tablename order by orderfield desc/asc limit position, counter;
position indique où commencer la requête, s'il est 0, elle commence depuis le début, le compteur indique le nombre de requêtes
Obtenir la première 15 enregistrements :
sélectionnez * à partir du nom de la table, trié par champ de commande, limite desc/asc 0,15

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn