Maison >base de données >tutoriel mysql >Quelle est la syntaxe de base de l'instruction de requête de base de données SQL
La syntaxe complète de l'instruction de requête de base de données SQL est "Sélectionnez [option de sélection] liste de champs [alias de champ]/* à partir de la source de données [clause où] [clause groupe par] [clause d'avoir] [clause d'ordre par] [clause limite ];".
L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.
La base de données est MySQL et le nom de la table de base de données utilisée est my_student. Les informations complètes sur les données de la table
sont :
La syntaxe complète est :
Sélectionnez la liste de champs [option de sélection] [alias du champ]. /* de la source de données [clause Where] [clause group by][have clause][order by clause][limit clause];
①[select option] :
Les options sélectionnées incluent : ALL (tout, par défaut), distinct (Supprimer les doublons). Distinct fait référence à l’intégralité de l’enregistrement des résultats de la requête.
sélectionnez DISTINCT (sexe) de mon_élève ;
sélectionnez DISTINCT(sexe), nom de mon_élève ; et sélectionnez DISTINCT sexe, nom de mon_élève ; le résultat est le même.
②[where word] : où est la seule condition qui commence à juger lorsque les données sont extraites du disque et le jugement où est lancé. Si le résultat du jugement est vrai, le. le résultat récupéré est enregistré dans la mémoire, sinon abandonnez.
select * from my_student Where name = 'Haha1';
③[group by clause] : Group by clause La fonction principale de la clause group by est de regrouper pour les opérations statistiques, pas pour l'affichage (Quand. (affichage, seul le premier enregistrement des enregistrements regroupés sera affiché). Lors du regroupement, les fonctions count(), max(), min(), avg() et sum() sont généralement utilisées en combinaison.
A. Regroupement de sous-segments uniques :
selectc_id,count(*),max(height),min(height),avg(height),sum(age) from my_studentgroup by c_id ;
La signification de l'instruction SQL Oui : la table my_student est regroupée par c_id, puis affiche le nom c_id de chaque groupe après le regroupement, le nombre total de chaque groupe, la taille moyenne la plus élevée, la plus basse de chaque groupe et l'âge total de chaque groupe.
B. Regroupement multi-champs
sélectionnez c_id,sex,count(*),max(height),min(height),avg(height),sum(age)du groupe my_student par c_id,sex;
signifie que l'ensemble du tableau est d'abord regroupé selon c_id, puis en fonction de ce regroupement, chaque groupe est ensuite regroupé selon le sexe.
C. Regroupement multi-champs (plus afficher toutes les données d'un certain champ dans chaque groupe)
selectc_id,sex,count(*),max(height),min(height),avg(height),sum(age ),GROUP_CONCAT(nom)du groupe my_student par c_id ,sex;
④[avoir clause] : La fonction d'avoir est similaire à où, et avoir peut faire presque tout ce qu'il peut faire, mais où ne peut pas le faire. Il y en a beaucoup des choses que l'avoir peut faire, principalement parce que
where ne peut opérer sur les données que lorsque les données sont extraites du disque et que les résultats après regroupement des données dans la mémoire ne peuvent être traités que par l'avoir.
selectc_id,count(*),max(height),min(height),avg(height),sum(age) de my_studentgroup par c_id ayant COUNT(*) >= 3;
⑤[order by clause] : Triez les données par ordre croissant ou décroissant en fonction d'un certain champ. (Lorsque vous effectuez un tri multi-champs, triez d'abord en fonction d'un certain champ, puis triez en fonction d'un certain champ dans l'ordre de tri)
A Tri d'un seul champ :
sélectionnez * dans la commande my_student par c_id ;
.B. Tri multi-champs
select * from my_student order by c_id,sex;
⑥[clause limite] : Limiter le nombre de résultats. Limiter le nombre d'enregistrements de décalage ;
A, sélectionnez * depuis ma limite d'élève 2 ;
B, sélectionnez * depuis ma limite d'élève 0,3 ;
Recommandations associées : "tutoriel mysql"
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!