Mais uma dica no CODARE: criando tabelas temporárias em memória no MySQL.
Uma forma de obter velocidade na execução de tabelas, principalmente as temporárias, é criá-las em memória. Como estas tabelas são usadas e depois descartadas, é possível obter um ganho de performance muito grande com este truque.
Para criar uma tabela temporária em memória, faça:
CREATE TEMPORARY TABLE <nome_da_tabela> (<campos>) ENGINE=MEMORY;
Observe a necessidade obrigatória de informar o tipo de engine usado. Neste caso, a memória do servidor.
Esta dica também é válida para a criação de tabelas comuns (não-temporárias), bastando remover o argumento TEMPORARY. Mas cuidado, se o servidor cair, os dados são perdidos e não é possível recuperá-los.