Heim > Datenbank > MySQL-Tutorial > Detaillierte Erläuterung der Optimierung von MYSQL-SQL-Anweisungen

Detaillierte Erläuterung der Optimierung von MYSQL-SQL-Anweisungen

黄舟
Freigeben: 2017-02-28 13:12:00
Original
1708 Leute haben es durchsucht

Es gibt viele Optimierungstechniken in SQL. Manchmal weisen zwei SQL-Anweisungen, die dieselbe Funktion erreichen können, eine unterschiedliche Abfrageleistung auf, daher ist es notwendig, einige effiziente SQL-Codes zu beherrschen.

1. Abfrageoptimierung

1. Reduzieren Sie die Anzahl der Zeilen im Datensatz und vermeiden Sie select *

2. Verwenden Sie „exist“ anstelle von „in“, zum Beispiel: „Select sno from stu where exist“ (select * from grand where sno=stu.sno)

3. Verwenden Sie > ;= anstelle von >, fügen Sie gleich hinzu und vergleichen Sie dann, um den Mindest- oder Höchstwert direkt zu sperren. Wenn Sie nur > schreiben, vergleicht die Datenbank Zeile für Zeile.

4. Verwenden Sie den Index, aber führen Sie keine Berechnungen für den Index durch. Wenn Sie auf or stoßen, schlägt der Index fehl 🎜> 5. Verwenden Sie Limit 1, wenn Sie nur ein Datenelement abfragen. Dies führt dazu, dass die Suche fortgesetzt wird, nachdem die Daten gefunden wurden.

6. Vermeiden Sie die Verwendung von rand(), wenn die Daten abgefragt werden möchte außer Betrieb sein. Sie können zuerst eine Zufallszahl generieren:

7. Der Abfrage-Join sollte eine kleine Ergebnismenge verwenden, um eine große Ergebnismenge zu erzeugen

                   select userName from user limit $rand,1;
Nach dem Login kopieren

8. Der Unterabfrageprozess erstellt zunächst eine temporäre Tabelle in der inneren Abfrage. Löschen Sie die temporäre Tabelle

2. Analysieren Sie die Datenbankoptimierungsstrategie aus der Perspektive des Datenbankaufbaus

1. Optimieren Sie die Datenbankstruktur, teilen Sie Tabellen mit vielen Datenbankfeldern horizontal in mehrere Tabellen auf

2. Deaktivieren Sie den Index vor dem Einfügen von Daten und aktivieren Sie ihn dann:

3. Verwenden Sie Batch-Insert-Anweisungen: Wenn Sie LOAD DATA INFILE verwenden können Anweisung, versuchen Sie es zu verwenden, können Sie wählen:

 ALTER TABLE table_name DISABLE KEYS ;
                  ALTER TABLE table_name ENABLE KEYS ;
Nach dem Login kopieren

ALTER TABLE table_name ENABLE KEYS ;
Nach dem Login kopieren

Das Obige ist die detaillierte Erklärung von Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!



Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage