Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah anda melaksanakan penomboran dalam MySQL menggunakan LIMIT dan OFFSET?

Bagaimanakah anda melaksanakan penomboran dalam MySQL menggunakan LIMIT dan OFFSET?

DDD
Lepaskan: 2024-11-17 12:13:01
asal
312 orang telah melayarinya

How do you implement pagination in MySQL using LIMIT and OFFSET?

Menggunakan MySQL LIMIT dan OFFSET untuk Penomboran

Penomboran adalah penting untuk memaparkan set data yang besar dalam bahagian yang boleh diurus. MySQL menyediakan dua arahan, LIMIT dan OFFSET, untuk mendayakan fungsi ini.

LIMIT menetapkan bilangan maksimum baris untuk diambil, manakala OFFSET menentukan bilangan baris untuk dilangkau sebelum memulakan pengambilan semula. Ini membolehkan anda mendapatkan semula halaman data tertentu.

Kod Contoh untuk Penomboran:

Pertimbangkan kod berikut, yang memaparkan empat item setiap halaman:

$result = mysqli_query($con, "SELECT * FROM menuitem LIMIT 4");
Salin selepas log masuk

Kod ini akan mendapatkan semula empat baris pertama daripada jadual menuitem. Untuk mencipta berbilang halaman, anda boleh menggunakan OFFSET untuk melangkau baris:

$offset = 4;
$result = mysqli_query($con, "SELECT * FROM menuitem LIMIT 4 OFFSET $offset");
Salin selepas log masuk

Kod ini akan melangkau empat baris pertama dan mendapatkan semula empat baris seterusnya.

Menentukan Jumlah Bilangan Halaman:

Untuk mencipta penomboran tanpa nombor halaman pengekodan keras, anda mesti terlebih dahulu menentukan jumlah bilangan muka surat. Anda boleh mencapai ini dengan mengira jumlah bilangan baris dalam jadual:

$sql = "SELECT COUNT(*) FROM menuitem";
$result = mysqli_query($con, $sql);
$row_count = mysqli_num_rows($result);
// Free the result set
mysqli_free_result($result);
Salin selepas log masuk

Kini, anda boleh mengira bilangan halaman:

$items_per_page = 4;
$page_count = (int)ceil($row_count / $items_per_page);
Salin selepas log masuk

Menjana Pautan Halaman:

Dengan jumlah halaman yang diketahui, anda boleh menjana halaman pautan:

for ($i = 1; $i <= $page_count; $i++) {
  if ($i === $page) { // This is the current page
    echo 'Page ' . $i . '<br>';
  } else { // Show link to other page
    echo '<a href="/menuitem.php?page=' . $i . '">Page ' . $i . '</a><br>';
  }
}
Salin selepas log masuk

Ini akan menjana pautan ke semua halaman, menyerlahkan halaman semasa.

Dengan menggunakan pendekatan ini, anda boleh membuat penomboran tanpa nombor halaman pengekodan keras dan memastikan fleksibiliti dalam memaparkan set data yang besar.

Atas ialah kandungan terperinci Bagaimanakah anda melaksanakan penomboran dalam MySQL menggunakan LIMIT dan OFFSET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan