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

Indeks dan kunci utama multi kolom

Saya tidak begitu akrab dengan internal indeks pada mySql, tetapi pada dua produk vendor database yang saya kenal (MsSQL, Oracle) indeks adalah struktur Pohon seimbang, yang simpulnya diatur sebagai tupel berurutan dari kolom indeks didefinisikan pada (Dalam Urutan yang Ditentukan )

Jadi, kecuali mySql melakukannya dengan sangat berbeda, (mungkin tidak), indeks komposit apa pun (pada lebih dari satu kolom) bisa dapat digunakan oleh kueri apa pun yang perlu difilter atau diurutkan berdasarkan subset kolom dalam indeks, selama daftar kolom kompatibel, yaitu, jika kolom, ketika diurutkan sama dengan daftar kolom yang diurutkan dalam indeks lengkap, adalah subset terurut dari set lengkap kolom indeks, yang dimulai pada awal urutan indeks yang sebenarnya, tanpa celah kecuali di akhir...

Dengan kata lain, ini berarti bahwa jika Anda memiliki indeks pada (a,b,c,d) kueri yang memfilter pada (a), (a,b), atau (a,b,c) juga dapat menggunakan indeks , tetapi kueri yang perlu difilter pada (b), atau (c) atau (b,c) tidak akan dapat menggunakan indeks...

Jadi dalam kasus Anda, jika Anda sering perlu memfilter atau mengurutkan pada kolom item sendiri, Anda perlu menambahkan indeks lain pada kolom itu sendiri...



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. $PATH tidak disimpan setelah saya meninggalkan terminal

  2. Bagaimana cara memperbaiki tabel 'mysql.user' xampp yang rusak?

  3. PDO dapatkan ID terakhir yang dimasukkan

  4. Kolom Tidak Diketahui Di Mana Klausa

  5. Bagaimana cara menggunakan sesi di dalam halaman web?