select sentence, score from ( ( SELECT MATCH (sentence) AGAINST ('january february march april' IN BOOLEAN MODE) AS score, sentence_id, sentence FROM articles.sentences WHERE MATCH (sentence) AGAINST ('january february march april' IN BOOLEAN MODE) and MATCH (sentence) AGAINST ('january february march april' IN BOOLEAN MODE) =4 order by rand() limit 0,20 ) union ( SELECT MATCH (sentence) AGAINST ('january february march april' IN BOOLEAN MODE) AS score, sentence_id, sentence FROM articles.sentences WHERE MATCH (sentence) AGAINST ('january february march april' IN BOOLEAN MODE) and MATCH (sentence) AGAINST ('january february march april' IN BOOLEAN MODE) =3 order by rand() limit 0,20 ) union ( SELECT MATCH (sentence) AGAINST ('january february march april' IN BOOLEAN MODE) AS score, sentence_id, sentence FROM articles.sentences WHERE MATCH (sentence) AGAINST ('january february march april' IN BOOLEAN MODE) and MATCH (sentence) AGAINST ('january february march april' IN BOOLEAN MODE) =2 order by rand() limit 0,20 ) ) a order by rand() EXPLAIN: 1 PRIMARY ALL (null) (null) (null) (null) 60 Using temporary; Using filesort 2 DERIVED sentences fulltext fulltext_sentence fulltext_sentence 0 1 Using where; Using temporary; Using filesort 3 UNCACHEABLE UNION sentences fulltext fulltext_sentence fulltext_sentence 0 1 Using where; Using temporary; Using filesort 4 UNCACHEABLE UNION sentences fulltext fulltext_sentence fulltext_sentence 0 1 Using where; Using temporary; Using filesort (null) UNION RESULT ALL (null) (null) (null) (null) (null)