Không thể sử dụng Chỉ mục trên HOẶC như vậy. hãy thử cái này:
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
có một chỉ mục trên Due_Amount và một chỉ mục khác trên Bounced_Due_Amount.
Có thể tốt hơn nếu thiết kế lại bảng của bạn. Nếu không biết bảng logic kinh doanh của bạn hoặc bảng, tôi sẽ đoán rằng bạn có thể có cột Y / N "bị trả lại" hoặc 1/0 char / bit và chỉ là cột "Số tiền phải trả". Thêm chỉ mục trên "Due_Amount" đó và truy vấn sẽ chỉ là:
SELECT * FROM table WHERE Due_Amount > 0
bạn vẫn có thể phân biệt giữa hàng bị trả lại hay không hàng. Điều này sẽ không hoạt động nếu bạn cần có cả số tiền bị trả lại và số tiền không bị trả lại cùng một lúc.