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
Busybox: Ein Schweizer Taschenmesser voller klein...
Einführung: Heutzutage werden bei der Anmeldung o...
In diesem Artikel wird der spezifische Code für J...
Szenario 1. Pflegen Sie ein Bürgersystem mit eine...
Es besteht die Anforderung, den Schütteleffekt de...
1. Einleitung Wenn die Datenmenge in der Datenban...
Inhaltsverzeichnis 1. Projektordnerstruktur 1. As...
Als ich MySQL zum ersten Mal auf meiner virtuelle...
Inhaltsverzeichnis Vorwort JS Magische Zahl Numme...
So ändern Sie den Speicherort des MySQL-Datenbank...
Beginnen wir mit einer Beschreibung des Problems:...
Das letzte Update von Alibaba Cloud Disk ist scho...
1. Melden Sie sich bei der MySQL-Datenbank an mys...
Inhaltsverzeichnis 1. Wiederholen 1.1. Shop (Bibl...
1 Einleitung Beim Gestalten einer Datenbank ist e...