Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Buat banyak halaman dari kueri mysql

Seperti yang Anda tebak, Anda harus menggunakan LIMIT kata kunci .

Ia menerima dua nilai (mengutip) :

  • offset dari baris pertama yang dikembalikan
  • jumlah maksimum baris yang akan dikembalikan


Dalam kasus Anda, Anda harus menggunakan sesuatu seperti ini untuk halaman pertama :

select * from your_table order by ... limit 0, 50

Dan, kemudian, untuk halaman kedua :

select * from your_table order by ... limit 50, 50

Dan untuk yang ketiga :

select * from your_table order by ... limit 100, 50

Dan seterusnya;-)


Edit setelah komentar : untuk mendapatkan nomor halaman, Anda harus menerimanya dari URL Anda, yang akan terlihat seperti ini :

http://www.example.com/page.php?pagenum=2

Kemudian, Anda akan menghitung nilai pertama untuk limitnya, :

$offset = 50 * intval($_GET['pagenum']);

Dan masukkan ke dalam kueri Anda :

select * from your_table order by ... limit $offset, 50


Membuat URL ke halaman yang berbeda sekarang menjadi masalah untuk mendapatkan URL seperti ini :

http://www.example.com/page.php?pagenum=0
http://www.example.com/page.php?pagenum=1
http://www.example.com/page.php?pagenum=2
...

Jika Anda tahu Anda memiliki 700 elemen, dan 50 per halaman, Anda akan memiliki 700/50 halaman;-)
Jadi, hal seperti ini akan berhasil :

for ($i=0 ; $i<700/50 ; i++) {
    // Use http://www.example.com/page.php?pagenum=$i as URL
}


Tentu saja, 700 adalah nilai yang mungkin dapat berubah, dan tidak boleh di-hard-code :harus ditentukan dari database, menggunakan count pertanyaan :

select count(*) as total
from your_table
...


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. perlu pembaruan untuk permintaan mysql untuk memilih rentang tanggal untuk reservasi kamar hotel atau apa pun

  2. Server MySQL Mandiri

  3. Kapan saya harus menggunakan UNSIGNED dan SIGNED INT di MySQL?

  4. Bagaimana cara menginstal modul Python MySQLdb menggunakan pip?

  5. Mengelompokkan datetime MySQL ke dalam interval terlepas dari zona waktu