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

MySQL tidak menggunakan indeks untuk ORDER BY

Karena harus memuat seluruh tabel untuk menjawab kueri dan menyortir 4 elemen murah, pengoptimal kueri mungkin menghindari menyentuh indeks. Apakah ini masih terjadi dengan tabel yang lebih besar?

Perhatikan bahwa kolom varchar(3000) tidak dapat menjadi indeks penutup karena MySQL tidak akan menyertakan lebih dari 768 byte pertama atau lebih dari varchar dalam indeks.

Jika Anda ingin kueri hanya membaca indeks, indeks harus memiliki setiap kolom yang Anda SELECT ing untuk di dalamnya. Di innodb, itu akan mulai berfungsi untuk tabel dua kolom Anda setelah Anda membuat textcol cukup kecil; di MyISAM Anda harus memasukkan sendiri kolom kunci utama, seperti CREATE INDEX textcolindex ON test (textcol,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. Masalah Penyandian Teks MySQL C#

  2. Django bergabung sendiri, Bagaimana mengonversi kueri ini ke kueri ORM

  3. Bagaimana cara memilih antara hari pertama bulan ini dan hari ini di MySQL?

  4. MySQL - PHP:Menampilkan Hasil Dalam Baris Tabel (5 hasil per baris)

  5. MySQL GROUP BY beberapa kolom dari tabel yang berbeda