Bagaimanakah Saya Boleh Cari Jumlah Kiraan Keputusan dalam Penomboran MySQL dengan Offset dan Had?

Patricia Arquette
Lepaskan: 2024-10-23 10:33:02
asal
366 orang telah melayarinya

How Can I Find the Total Count of Results in MySQL Pagination with Offset and Limit?

Mencari Jumlah Hasil dengan Offset dan Had dalam MySQL

Penomboran membenarkan pengguna menyemak imbas set data yang besar dalam bahagian yang boleh diurus. Walau bagaimanapun, untuk menentukan jumlah halaman memerlukan mengetahui jumlah hasil. Apabila menggunakan offset dan had untuk penomboran, nampaknya tidak cekap untuk menjalankan pertanyaan yang sama dua kali, sekali dengan had dan sekali tanpa.

SQL_CALC_FOUND_ROWS: Penyelesaian

Untuk menangani isu ini, MySQL menyediakan kata kunci khas: SQL_CALC_FOUND_ROWS. Dengan menambahkan kata kunci ini pada permulaan pertanyaan anda, MySQL akan mengira dan menyimpan jumlah bilangan baris yang akan dikembalikan tanpa klausa LIMIT.

Contoh Pertanyaan:

<code class="sql">SELECT SQL_CALC_FOUND_ROWS * 
FROM table_name 
WHERE category_id = '1' 
ORDER BY date_created DESC
LIMIT 10 OFFSET 20;</code>
Salin selepas log masuk

Mendapatkan Jumlah Bilangan Keputusan:

Selepas melaksanakan pertanyaan di atas, anda boleh menggunakan kod PHP berikut untuk mendapatkan jumlah bilangan hasil:

<code class="php">$totalRows = $db->query('SELECT FOUND_ROWS() AS total')->row()->total;</code>
Salin selepas log masuk

Faedah SQL_CALC_FOUND_ROWS:

  • Peningkatan kecekapan: Menghapuskan keperluan untuk menjalankan pertanyaan dua kali.
  • Ketepatan : Menjamin jumlah kiraan adalah betul, walaupun data asas berubah antara pertanyaan.
  • Kesederhanaan: Mudah dilaksanakan dengan satu kata kunci.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Cari Jumlah Kiraan Keputusan dalam Penomboran MySQL dengan Offset dan Had?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!