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

Gulir Tak Terbatas dengan Data MySQL

Saya melihat kode Anda di jawaban lain, dan saya akan merekomendasikan menggunakan fungsi LIMIT di MySql alih-alih mengimbangi nilainya. Contoh:

SELECT * FROM all_posts ORDER BY post_id DESC LIMIT '".(((int)$page)*5)."',5

Ini hanya akan mengambil nomor halaman dalam permintaan AJAX dan mendapatkan offset secara otomatis. Ini adalah kueri yang konsisten, dan bekerja secara independen dari hasil terakhir pada halaman. Kirim sesuatu seperti page=1 atau page=2 dalam kode jQuery Anda. Ini dapat dilakukan dengan beberapa cara berbeda.

Pertama, hitung jumlah elemen yang dibangun pada halaman dan bagi dengan jumlah pada halaman. Ini akan menghasilkan nomor halaman.

Kedua, Anda dapat menggunakan jQuery dan mengikat nomor halaman saat ini ke badan:

$(body).data('page', 1)

Tingkatkan satu setiap pemuatan halaman.

Melakukan ini benar-benar cara yang lebih baik, karena menggunakan satu kueri untuk semua operasi, dan tidak memerlukan banyak informasi tentang data yang sudah ada di halaman.

Satu-satunya hal yang perlu diperhatikan adalah bahwa logika ini mengharuskan permintaan halaman pertama menjadi 0, bukan 1. Ini karena 1*5 akan dievaluasi menjadi 5, melewatkan 5 baris pertama. Jika 0, ia akan mengevaluasi ke 0*5 dan melewatkan 0 baris pertama (karena 0*5 adalah 0).

Beri tahu saya pertanyaan apa pun yang Anda miliki!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana saya bisa menggunakan jika ada untuk membuat atau menjatuhkan indeks di MySQL?

  2. Bagaimana Fungsi RPAD() Bekerja di MySQL

  3. Bagaimana cara mencari baris yang berisi substring?

  4. Cara menggunakan python mysqldb untuk menyisipkan banyak baris sekaligus

  5. Masukkan ke dalam 2 tabel dengan PDO MySQL