When you plan your queries, you should avoid the use of wildcard keyword * – which means “retrieve any field” – mainly because it may decrease performances, since the engine allocates space for the entire row; use explicit field declaration instead, such as:
SELECT field1, field2 FROM table1
Moreover, consider the row length limit when you handle ordered queries; an apparently painless query like this:
SELECT * FROM table1 INNER JOIN table2 ON table1.id = table2.id ORDER BY table2.field1
may return error 1540, if the result row length is more than 8096 bytes.