Heim  >  Artikel  >  Datenbank  >  Was ist die Abfrageanweisung der MySQL-Datenbank?

Was ist die Abfrageanweisung der MySQL-Datenbank?

青灯夜游
青灯夜游Original
2022-01-05 11:39:5559582Durchsuche

Abfrageanweisung: 1. „select * from table name;“, Sie können alle Daten in der Tabelle abfragen. 2. „select field name from table name;“, Sie können die Daten des angegebenen Felds in der Tabelle abfragen 3. „Eindeutigen Feldnamen aus Tabellennamen auswählen“: Sie können eine Deduplizierungsabfrage für die Daten in der Tabelle durchführen.

Was ist die Abfrageanweisung der MySQL-Datenbank?

Die Betriebsumgebung dieses Tutorials: Windows7-System, MySQL8-Version, Dell G3-Computer.

Einzelne Tabellenabfrage

1. Gewöhnliche Abfrage

(1) Befehl: 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;

多表查询

一、等值查询

现在有两个表:

Was ist die Abfrageanweisung der MySQL-Datenbank?

Was ist die Abfrageanweisung der MySQL-Datenbank?

现在要查询年龄小于20岁学生的不及格成绩

语句:select stu.id,score from stu,result where stu.id = result.id and age

(2) Befehl: select <abzufragendes feld> aus <tabellenname> Tabellenname></tabellenname></abzufragendes>3. Sortierung der Abfrage (Reihenfolge nach) ;Tabellenname> Reihenfolge nach desc>

Ohne desc ist die Standardeinstellung aufsteigende ReihenfolgeWas ist die Abfrageanweisung der MySQL-Datenbank?

4. Befehl: Wählen Sie <gruppieren nach was>, Summe (Punktzahl) aus <tabellenname> gruppieren nach <gruppieren nach was></gruppieren></tabellenname></gruppieren>

Angenommen, jetzt gibt es auch ein Schüler-Bewertungsblatt (Ergebnis). Anfrage zur Abfrage der Gesamtpunktzahl eines Schülers. Wir haben sie anhand ihrer Studierendenzahlen in verschiedene Gruppen eingeteilt.

Befehl:

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;
Mehrfache Tabellenabfrage

1. Äquivalente Abfrage

Jetzt gibt es zwei Tabellen:

Bildbeschreibung hier einfügen

Bildbeschreibung hier einfügen

Jetzt müssen Sie

die nicht bestandenen Noten von Schülern unter 20 Jahren überprüfen

.

Anweisung: select stu.id,score from stu,result where stu.id = result.id and age <img alt="Was ist die Abfrageanweisung der MySQL-Datenbank?" src="https://img.php.cn/upload/article/000/000/024/c850ef08b3e941d46675fd314ced3fc2-3.png"><br><p><strong>Es ist ersichtlich, dass die entsprechende Abfrageeffizienz zu niedrig ist</strong></p> <p><strong></strong> 2. Join-Abfrage </p> <p><strong></strong></p> 1. Outer-Join-Abfrage <p></p> <p> <img alt="Was ist die Abfrageanweisung der MySQL-Datenbank?" src="https://img.php.cn/upload/article/000/000/024/c850ef08b3e941d46675fd314ced3fc2-4.png"> (1) Left-Outer-Join-Abfrage </p> <p></p> Angenommen, wir verwenden immer noch die beiden Tabellen oben und <p> fragen immer noch die nicht bestandenen Noten von Schülern ab, die jünger als 20 Jahre sind. <img alt="Was ist die Abfrageanweisung der MySQL-Datenbank?" src="https://img.php.cn/upload/article/000/000/024/5cb5f9b0cd556c33fdea42421dba0edd-5.png"></p> <p> Wir verwenden eine Left-Outer-Join-Abfrage, um zunächst alle Schüler abzufragen Jünger als 20 Jahre alt in der Schülertabelle Nehmen Sie es heraus, nehmen Sie dann alle Schüler mit einer Punktzahl von weniger als 60 aus der Punktetabelle heraus und vergleichen Sie sie dann. Wir werden feststellen, dass die Effizienz erheblich verbessert ist, und wir können sie anhand finden nur viermal passend. </p> <p>Wie in der Abbildung unten gezeigt: <strong></strong></p> <p> Die Aussage lautet: </p><pre class="brush:js;toolbar:false">select a.id,score from (select id,age from stu where age &lt; 20) a (过滤左表信息) right join (select id, score from result where score &lt; 60) b (过滤右表信息) on a.id = b.id;</pre><p>Der linke äußere Join bedeutet, dass <strong>alle Ergebnisse der Filterung der linken Tabelle vorhanden sein müssen</strong>. Wenn in der linken Tabelle gefilterte Daten vorhanden sind und die rechte Tabelle nicht übereinstimmt, wird in der rechten Tabelle NULL angezeigt Die linke Tabelle muss Alle vorhanden sein </p> <p></p>, wie im Bild gezeigt: <p></p> <p><img alt="Was ist die Abfrageanweisung der MySQL-Datenbank?" src="https://img.php.cn/upload/article/000/000/024/5cb5f9b0cd556c33fdea42421dba0edd-6.png"></p> Wir haben festgestellt, dass nur zwei übereinstimmende Bedingungen in der gefilterten Tabelle erfüllt sind (rot bedeutet, dass die Bedingungen erfüllt sind), aber das Endergebnis ist: <p> </p> <p><img alt="Was ist die Abfrageanweisung der MySQL-Datenbank?" src="https://img.php.cn/upload/article/000/000/024/5cb5f9b0cd556c33fdea42421dba0edd-7.png"></p>Die linke Tabelle stimmt nicht überein. Die Daten werden in leer geändert und die aus der rechten Tabelle herausgefilterten Daten müssen vorhanden sein. <p></p> <p> (3) Vollständige Outer-Join-Abfrage</p> <p><a href="https://www.php.cn/course/list/51.html" target="_blank" textvalue="mysql视频教程"> kombiniert den linken Outer-Join und den rechten Outer-Join, sodass die Daten in der linken und rechten Tabelle vorhanden sind. 2. Inner-Join-Abfrage: Nur passende Ergebnisse filtern Die Aussage lautet:</a> <pre class="brush:js;toolbar:false">select a.id,score from (select id,age from stu where age &lt; 20) a (过滤左表信息) inner join (select id, score from result where score &lt; 60) b (过滤右表信息) on a.id = b.id;</pre></p>【Verwandte Empfehlung: 🎜MySQL-Video-Tutorial🎜】🎜

Das obige ist der detaillierte Inhalt vonWas ist die Abfrageanweisung der MySQL-Datenbank?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn