Maison >base de données >tutoriel mysql >Quelle est l'instruction de requête de la base de données MySQL
Instruction de requête : 1. "select * from table name;", vous pouvez interroger toutes les données de la table; 2. "select field name from table name;", vous pouvez interroger les données du champ spécifié dans la table. ; 3. "sélectionnez le nom du champ distinct du nom de la table", vous pouvez effectuer une requête de déduplication sur les données de la table.
L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.
1. Requête ordinaire
(1) Commande : select * from <table name> // Tongpi<code>select * from ;//通匹
(2)命令:select from ;
2、去重查询(distinct)
命令:select <strong>distinct</strong> from
3、排序查询(order by)
升序:asc
降序:desc
降序排列命令:select from order by desc
不加desc一般默认为升序排列
4、分组查询(group by)
命令:select , Sum(score) from group by
假设现在又有一个学生成绩表(result)。要求查询一个学生的总成绩。我们根据学号将他们分为了不同的组。
命令:
mysql>select id, Sum(score) from result group by id;
一、等值查询
现在有两个表:
现在要查询年龄小于20岁学生的不及格成绩。
语句:
select stu.id,score from stu,result where stu.id = result.id and age
select <champ interroger> à partir de <nom de la table>;</nom></champ>
2. Requête de déduplication (distinct)
: sélectionner <strong>distinct</strong> Nom de la table>
3. Requête de tri (ordre par)Ordre croissant : asc
Ordre décroissant : descCommande d'ordre décroissant : select <pour interroger le nom du champ de la table> ordre par <nom du champ interroger> desc</nom></pour>
Sans desc, la valeur par défaut est l'ordre croissant
4. sélectionnez
select a.id,score from (select id,age from stu where age < 20) a (过滤左表信息) left join (select id, score from result where score < 60) b (过滤右表信息) on a.id = b.id;Requête de tables multiples
Maintenant, il y a deux tables :
Maintenant, vous devez vérifier les notes d'échec des étudiants de moins de 20 ans
. Déclaration :
sélectionnez stu.id, score de stu, résultat où stu.id = result.id et âge <p><img alt="Quelle est linstruction de requête de la base de données MySQL" src="https://img.php.cn/upload/article/000/000/024/c850ef08b3e941d46675fd314ced3fc2-4.png">it La requête est la suivante : </p>
<p></p>
<p><img alt="Quelle est linstruction de requête de la base de données MySQL" src="https://img.php.cn/upload/article/000/000/024/5cb5f9b0cd556c33fdea42421dba0edd-5.png"></p>On peut voir que l'efficacité de la requête équivalente est trop faible <p></p>
<p><strong></strong> 2. Requête de jointure </p>
<p></p>
<p><strong> 1. Requête de jointure externe </strong></p>
<p></p> (1 ) Requête de jointure externe gauche <p></p>
<p> Supposons que nous utilisons toujours les deux tables ci-dessus, et que <img alt="Quelle est linstruction de requête de la base de données MySQL" src="https://img.php.cn/upload/article/000/000/024/5cb5f9b0cd556c33fdea42421dba0edd-6.png"> interrogeons toujours les notes d'échec des étudiants de moins de 20 ans </p>
<p></p> Nous utilisons une requête de jointure externe gauche pour interroger d'abord tous les étudiants de moins de 20 ans ans dans le tableau des étudiants Retirez-le, puis supprimez tous les étudiants avec des scores inférieurs à 60 dans le tableau des scores, puis faites-les correspondre. Nous constaterons que l'efficacité est grandement améliorée et nous pouvons les trouver en faisant correspondre seulement quatre. fois. <p><img alt="Quelle est linstruction de requête de la base de données MySQL" src="https://img.php.cn/upload/article/000/000/024/5cb5f9b0cd556c33fdea42421dba0edd-7.png">Comme le montre la figure ci-dessous : </p>
<p></p>
<p> L'instruction est la suivante : </p><pre class="brush:js;toolbar:false">select a.id,score
from
(select id,age from stu where age < 20) a (过滤左表信息)
right join
(select id, score from result where score < 60) b (过滤右表信息)
on a.id = b.id;</pre><p>La jointure externe gauche signifie <a href="https://www.php.cn/course/list/51.html" target="_blank" textvalue="mysql视频教程">tous les résultats du filtrage de la table de gauche doivent exister</a>. S'il y a des données filtrées dans la table de gauche et que la table de droite ne correspond pas, alors NULL apparaîtra dans la table de droite </p>🎜🎜(2) Requête de jointure externe droite🎜🎜<pre class="brush:js;toolbar:false">select a.id,score
from
(select id,age from stu where age < 20) a (过滤左表信息)
inner join
(select id, score from result where score < 60) b (过滤右表信息)
on a.id = b.id;</pre>🎜La jointure externe gauche est 🎜Le résultat filtré de ; le tableau de gauche doit être Tous existent 🎜🎜🎜 comme le montre l'image : 🎜🎜🎜🎜🎜 Nous avons constaté que seules deux conditions correspondantes dans le tableau filtré sont remplies (le rouge représente que les conditions sont remplies), mais le résultat final est : 🎜 🎜🎜🎜🎜Le tableau de gauche ne correspond pas. Les données deviennent vides et les données filtrées du tableau de droite doivent exister. 🎜🎜🎜 (3) La requête de jointure externe complète🎜🎜🎜 combine la jointure externe gauche et la jointure externe droite, de sorte que les données de la table de gauche et de la table de droite existent. 🎜🎜🎜2. Requête de jointure interne🎜🎜🎜Filtrer uniquement les résultats correspondants🎜🎜Par exemple, les résultats filtrés sont les suivants :🎜🎜🎜🎜🎜Le résultat final est :🎜🎜🎜🎜🎜Correspondre uniquement aux résultats dont nous avons besoin🎜🎜 La déclaration est la suivante :🎜 rrreee🎜【Recommandations associées : 🎜tutoriel vidéo 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!