Tabele tymczasowe są często cenne, gdy masz dość skomplikowaną SELECT, którą chcesz wykonać, a następnie wykonać kilka zapytań na tym...
Możesz zrobić coś takiego:
CREATE TEMPORARY TABLE myTopCustomers
SELECT customers.*,count(*) num from customers join purchases using(customerID)
join items using(itemID) GROUP BY customers.ID HAVING num > 10;
A następnie wykonaj kilka zapytań przeciwko myTopCustomers bez konieczności łączenia się z zakupami i elementami w każdym zapytaniu. Następnie, gdy aplikacja nie potrzebuje już uchwytu bazy danych, nie trzeba wykonywać czyszczenia.
Prawie zawsze zobaczysz tabele tymczasowe używane do tabel pochodnych, których tworzenie było kosztowne.