Indeks tidak dapat digunakan pada OR seperti itu. coba ini:
SELECT * FROM table WHERE Due_Amount > 0
UNION ALL
SELECT * FROM table Bounced_Due_Amount > 0
--use "UNION" if Due_Amount and Bounced_Due_Amount could both >0 at any one time
memiliki indeks di Due_Amount dan satu lagi di Bounced_Due_Amount.
Mungkin lebih baik untuk mendesain ulang meja Anda. Tanpa mengetahui logika atau tabel bisnis Anda, saya akan menebak bahwa Anda dapat memiliki kolom "Bounced" Y/N atau 1/0 char/bit dan hanya kolom "Due_Amount". Tambahkan indeks pada "Due_Amount" itu dan kuerinya akan menjadi:
SELECT * FROM table WHERE Due_Amount > 0
Anda masih bisa membedakan antara baris Terpental atau tidak. Ini tidak akan berfungsi jika Anda harus memiliki jumlah jatuh tempo yang terpental dan tidak terpental secara bersamaan.