Membandingkan dua penyataan pertama, penyataan kedua tidak menggunakan indeks Saya ingat bahawa indeks akan diberikan apabila bilangan baris yang diimbas mencapai nombor tertentu.
Imbasan jadual penuh menunjukkan bahawa bilangan baris yang diimbas ialah 70341, tetapi jumlah bilangan baris data hanyalah 57087?
select count(*) menggunakan indeks, tetapi juga mengimbas 70341 baris Adakah pernyataan ini akan menyebabkan masalah prestasi?
Dalam pangkalan data mekanisme pengoptimuman CBO, tiada nilai kritikal yang jelas untuk menggunakan atau tidak menggunakan indeks KOS minimum dalam pelan pelaksanaan digunakan sebagai standard Nilai empirikal adalah lebih sesuai untuk menggunakan indeks apabila jumlah bilangan baris dalam jadual adalah kurang daripada 5%.
Saya faham bahawa pernyataan kedua menggunakan data statistik jadual Jika jadual baru-baru ini mengalami perubahan besar dan data statistik telah dikemas kini dalam masa, akan terdapat sisihan yang besar antara kedua-duanya.
count(*) menggunakan indeks, yang bermaksud bahawa medan kemas kini_at mempunyai definisi NOT NULL Berbanding dengan imbasan jadual penuh, kos mengimbas indeks akan lebih rendah.