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
Vorwort Es gibt ein Szenario, in dem das Unterneh...
Inhaltsverzeichnis Lösung 1: Kopieren Sie die Übe...
Um mehrere Datenbanken zu sichern, können Sie den...
Inhaltsverzeichnis 1. MHA 1. Konzept 2. Zusammens...
Dieser Artikel verwendet die Gearman+MySQL-Method...
In diesem Artikel wird beschrieben, wie Sie mit D...
Vorwort Ein Klassenkamerad untersucht die Streami...
MySql 8.0 entsprechendes Treiberpaket passend Nac...
Aus Sicherheitsgründen verfügt Alibaba Cloud Serv...
Vorwort Es ist sehr einfach, einen Server in node...
1. Verständnis der Übergangsattribute 1. Das Über...
Bei Verwendung von apt-get zur Installation ist d...
1. Prüfen Sie, ob Port 80 belegt ist. Normalerwei...
In diesem Artikel werden hauptsächlich die Proble...
Das MySQL-Entwicklungsteam hat am 14. Oktober 201...