Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Paginierung ohne Doppelabfrage?

Ich mache fast nie zwei Abfragen.

Geben Sie einfach eine Zeile mehr als erforderlich zurück, zeigen Sie nur 10 auf der Seite an, und wenn mehr als angezeigt werden, zeigen Sie eine Schaltfläche "Weiter" an.

SELECT x, y, z FROM `table` WHERE `some_condition` LIMIT 0, 11
// iterate through and display 10 rows.

// if there were 11 rows, display a "Next" button.

Ihre Abfrage sollte in der Reihenfolge der relevantesten zuerst zurückgegeben werden. Die Chancen stehen gut, dass es den meisten Leuten egal ist, auf Seite 236 von 412 zu gehen.

Wenn Sie eine Google-Suche durchführen und Ihre Ergebnisse nicht auf der ersten Seite sind, gehen Sie wahrscheinlich auf Seite zwei, nicht auf neun.