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

MySQL:Mengapa Order By ID berjalan jauh lebih lambat daripada Order By Kolom lain?

Dari dokumentasi MySQL di http://dev.mysql .com/doc/refman/5.6/en/order-by-optimization.html

Dalam beberapa kasus, MySQL tidak dapat menggunakan indeks untuk menyelesaikan ORDER BY , meskipun masih menggunakan indeks untuk menemukan baris yang cocok dengan WHERE ayat. Kasus-kasus tersebut antara lain sebagai berikut:

. . .

Kunci yang digunakan untuk mengambil baris tidak sama dengan yang digunakan di ORDER BY :

`SELECT * FROM t1 WHERE key2=constant ORDER BY key1;`

Ini mungkin tidak akan membantu, tetapi apa yang terjadi jika Anda menambahkan AND ID > 0 ke WHERE ayat? Apakah ini akan menyebabkan MySQL menggunakan kunci utama untuk menyortir? Patut dicoba.

(Tampaknya aneh bahwa memesan dengan ak efisien, karena ak bahkan tidak memiliki indeks, tapi itu mungkin karena nilai ak yang lebih sedikit?)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara terbaik untuk menyimpan Pengaturan Aplikasi PHP?

  2. Tidak dapat memuat file atau rakitan 'MySql.Data, Version=6.2.2.0

  3. indeks pada url atau hashing mempertimbangkan RAM

  4. PHP menampilkan gambar dari database

  5. ColdFusion:Opsi Aplikasi Berdasarkan Peran?