Sorry for a silly question, I tried query with WHERE clause and ORDER at the end, which actually took very long time to implement, even thought WHERE clause was on indexed field. It looks like Mysql firstly performs ORDER on entire table and after that SELECT, which is not preferred behavior. Am I right? How can I cause it first perform SELECT and then ORDER. Thanks! Addendum: mysql> explain SELECT * FROM `products` WHERE (`products`.user_id = 1111) AND ( (`products`.`type` = 'type1' ) ) ORDER BY products.id DESC LIMIT 1 \G; *************************** 1. row *************************** id: 1 select_type: SIMPLE table: products type: ref possible_keys: index_products_on_user_id, index_products_on_type , index_products_on_type_and_status key: index_products_on_user_id key_len: 5 ref: const rows: 2570 Extra: Using where; Using filesort