Ok try this,
Create a Temporal table with the same colums in your SELECT clause,
I don't remember right now, but go to your MySQL manual and read the SELECT statement help. There is a way to make that the result of your SELECT be inserted in table. with options like ( ignored duplicates, etc ).
Run every SELECT you have separately and make them go to the Temporal Table.
Finally. SELECT * FROM yourTempTable;
It's fast!. don't worry. Hope this helps.