Finden Sie das Problem Wenn wir den Inhalt in einer Liste anzeigen, treten zwangsläufig Paging-Probleme auf, da die Anzahl der Inhalte in der Liste zwar groß sein kann, die Größe der Schnittstelle, die der Benutzer gleichzeitig sehen kann, jedoch begrenzt ist. Es ist unmöglich, den gesamten Inhalt in einer Schnittstelle anzuzeigen. Wenn zu viele Daten gleichzeitig vom Backend abgerufen werden, wird das Backend zusätzlich belastet. Normalerweise wird für Paging-Abfragen die folgende Anweisung verwendet: WÄHLEN * FROM-Tabelle wobei Bedingung1 = 0 und Bedingung2 = 0 und Bedingung3 = -1 und Bedingung4 = -1 Sortieren nach ID aufsteigend GRENZE 2000 OFFSET 50000 Wenn der Offset besonders groß ist, wird die Ausführungseffizienz dieser Anweisung erheblich reduziert, und die Effizienz nimmt mit zunehmendem Offset ab. Die Gründe sind: MySQL überspringt die Offsetzeile nicht, sondern nimmt den Offset + N Zeilen, gibt dann die vorherige Offsetzeile zurück und gibt N Zeilen zurück. Wenn der Offset besonders groß ist und die einzelnen Daten ebenfalls groß sind, ist es umso langsamer, je mehr Daten bei jeder Abfrage abgerufen werden müssen. Optimierungsplan: WÄHLEN * FROM-Tabelle VERBINDEN (ID aus Tabelle auswählen wobei Bedingung1 = 0 und Bedingung2 = 0 und Bedingung3 = -1 und Bedingung4 = -1 Sortieren nach ID aufsteigend GRENZE 2000 OFFSET 50000) als tmp using(id) oder Wählen Sie a.* aus Tabelle a, (ID aus Tabelle auswählen wobei Bedingung1 = 0 und Bedingung2 = 0 und Bedingung3 = -1 und Bedingung4 = -1 Sortieren nach ID aufsteigend GRENZE 2000 OFFSET 50000) b wobei a.id = b.id Holen Sie sich zuerst die Primärschlüsselliste und fragen Sie dann die Zieldaten nach dem Primärschlüssel ab. Selbst wenn der Versatz groß ist, werden viele Primärschlüssel statt aller Felddaten abgerufen. Relativ gesehen wird die Effizienz erheblich verbessert. Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels Ihnen bei Ihrem Studium oder Ihrer Arbeit helfen kann. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: So stellen Sie versehentlich gelöschte Nachrichtendateien unter Linux wieder her
>>: Detaillierte Erläuterung der Fallstricke von add_header im Nginx-Konfigurationstutorial
1. Häufig verwendete höherwertige Funktionen von ...
Wenn Sie mit der Arbeit an einem Projekt beginnen...
Ergebnisse erzielen html <h2>CSS3-Zeitleist...
In diesem Artikelbeispiel wird der spezifische Co...
In diesem Artikel werden die detaillierten Schrit...
1. Schreiben Sie das Dockerfile (1) Klicken Sie m...
In diesem Artikelbeispiel wird der spezifische Co...
【Frage】 Wenn die äußere und die innere Tabelle ve...
Mein Chef hatte mich gebeten, ein Programm zu ers...
Mit dem Laufschriftelement können Sie einfache Gle...
Vorwort Durch das Erstellen von Verknüpfungen in ...
Umfassende Dokumentation GitHub-Adresse https://g...
Hintergrund Bei der Replikation handelt es sich u...
Vorbereitung Windows Server 2008 R2 Enterprise (2...
Inhaltsverzeichnis MySQL Inner Join, Left Join, R...