SELECT a.ProductID,a.Name,a.Description,a.Price,a.MerchantID,b.Name FROM Cat_919 a,Merchant b, Cat_919_RAND d WHERE a.MerchantID = b.MerchantID AND a.ProductID = d.ProductID AND a.ProductID IN (SELECT ProductID FROM Cat_919_Search WHERE MATCH(searchStr) AGAINST('+the +north +face +spectrum +tent +33' IN BOOLEAN MODE)) ORDER BY d.ID LIMIT 0,10; +----+--------------------+----------------+-----------------+--------------------+---------+---------+----------------------+--------+--------------------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+--------------------+----------------+-----------------+--------------------+---------+---------+----------------------+--------+--------------------------+ | 1 | PRIMARY | d | index | ProductID | PRIMARY | 4 | NULL | 107683 | | | 1 | PRIMARY | a | eq_ref | PRIMARY,MerchantID | PRIMARY | 4 | product.d.ProductID | 1 | Using where | | 1 | PRIMARY | b | eq_ref | PRIMARY,MerchantID | PRIMARY | 4 | product.a.MerchantID | 1 | | | 2 | DEPENDENT SUBQUERY | Cat_919_Search | unique_subquery | PRIMARY,SearchStr | PRIMARY | 4 | func | 1 | Using index; Using where | +----+--------------------+----------------+-----------------+--------------------+---------+---------+----------------------+--------+--------------------------+