You've already had some good advice, but there's something much more simpler that will also give you a significant boost: a covering index.
Simply put, the engine is smart enough to not bother with row lookups if everything you asked for is already in the index it was using. You'll need to keep the index requirements in mind, of course (most selective fields first, order fields after selection fields, etc) and then append any other fields to the same index. Hard to say more without actual use cases, of course, but it's well worth looking into as it requires no other changes in application or schema. -- Unhappiness is discouraged and will be corrected with kitten pictures. -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/mysql