Mysql verwendet Limit-Paging und Oracle verwendet Rownum-Paging. Freunde, die es benötigen, können sich darauf beziehen
1. MySQL verwendet Limit Paging
select * from stu limit m, n; //m = (startPage-1)*pageSize,n = pageSize
PS:
(1) Der erste Parameterwert m repräsentiert die Startzeile, der zweite Der Parameter Gibt an, wie viele Zeilen belegt werden sollen (Seitengröße)
(2) m= (2-1)*10+1,n=10, was bedeutet, dass die Grenze 11,10 bei Zeile 11 beginnt und Zeile 10 einnimmt , also die 2 Seiten mit Daten.
(3) Die m- und n-Parameterwerte können nicht in Berechnungsausdrücken in der Anweisung geschrieben werden. Die Werte müssen vor dem Schreiben in der Anweisung berechnet werden.
2. Oracle verwendet Rownum-Paging
select * from ( select rownum rn,a.* from table_name a where rownum <= x //结束行,x = startPage*pageSize ) where rn >= y; //起始行,y = (startPage-1)*pageSize+1
PS:
(1) >= y, <= x bedeutet von Zeile y (Startzeile) bis Zeile x (Endzeile).
(2) rownum kann nur mit kleiner als, nicht größer als verglichen werden, da rownum zuerst abgefragt und dann sortiert wird. Wenn Ihre Bedingung beispielsweise rownum>1 ist, ist rownum die erste Datenabfrage 1, dann Nicht förderfähig. Die 2., 3.... sind ähnlich, aber sie haben nie die Bedingungen erfüllt, daher wurden keine Ergebnisse zurückgegeben. Daher müssen Sie bei der Abfrage einen Alias festlegen und diesen dann nach Abschluss der Abfrage aufrufen, um den Größer-als-Wert zu ermitteln.
Zusammenfassung
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Unterschieds zwischen MySQL- und Oracle-Paging. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!