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

Bagaimana cara memilih nomor N jumlah catatan pagination dari Database MySQL?

seratus pertama

 SELECT * FROM <table_name> ORDER BY id ASC LIMIT 0, 100

seratus berikutnya

 SELECT * FROM <table_name> ORDER BY id ASC LIMIT 100, 100

Anda sangat teliti dalam menempatkan pesanan di

PERNYATAAN BATAS DIJELASKAN: LIMIT pernyataan BUKAN WHERE ayat. Itu tidak dipilih dengan id atau bahkan menurut kriteria apa pun, (ada where klausa melakukan itu) Alih-alih limit klausa hanya memastikan bahwa Anda mengembalikan sepotong block dari hasil yang merupakan bagian dari "semuanya". Oleh karena itu mengapa penting untuk menyebutkan order by setiap kali, sehingga setiap panggilan berikutnya akan memberi Anda bagian yang benar dari blok data secara berurutan, dan Anda dapat 'berikutnya', 'berikutnya', 'berikutnya' melalui mereka

EG:untuk tabel yang tidak teratur this_table :

+-------+-------------+
|  id   |   value     |
+-------+-------------+
|  1    |     bob     |
|  12   |     fish    |
|  112  |     pink    |
|  2    |     cat     |
|  8    |     dog     |
|  56   |     blue    |
|  88   |     grey    |
|  87   |     red     |
+-------+-------------+

pilihan kembali seperti di bawah ini:

SELECT * FROM <this_table> ORDER BY id ASC LIMIT 0,5
+-------+-------------+
|  id   |   value     |
+-------+-------------+
|  1    |     bob     |
|  2    |     cat     |
|  8    |     dog     |
|  12   |     fish    |
|  56   |     blue    |
+-------+-------------+

dan

SELECT * FROM <this_table> ORDER BY id ASC LIMIT 5,5
+-------+-------------+
|  id   |   value     |
+-------+-------------+
|  87   |     red     |
|  88   |     grey    |
|  112  |     pink    |
+-------+-------------+

perhatikan kurangnya baris 9 dan 10 ini disengaja dan menunjukkan MySQL berfungsi sebagaimana dimaksud

kebetulan Anda juga harus melihat menambahkan indeks pada id ini akan secara besar-besaran meningkatkan kecepatan pemilihan ini

ALTER TABLE <table_name> ADD INDEX `id` (`id`)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Python:Ubah Tuple menjadi String yang dipisahkan koma

  2. Menggunakan MySql MySQLMembershipProvider - autogenerateschema=true tidak berfungsi?

  3. kolom stempel waktu mysql

  4. PILIH di MySQL tidak berfungsi

  5. Menyisipkan beberapa nilai ke dalam beberapa kolom dari larik data menggunakan pernyataan yang disiapkan PDO untuk MySQL