The following article describes the specific usage of Mysql temporary tables and reminds you to test Mysql temporary tables to check whether they are faster than running queries of a large number of databases. If the related data is well indexed, the temporary table may be a little unpleasant. Tags: Mysql
When you work on a very large table, you may occasionally need to run many queries to obtain a small subset of a large amount of data, instead of running these queries on the entire table, instead, MySQL can find a few required records each time, and it may be faster to select a temporary table, and then run the query on these tables.
It is easy to CREATE a temporary table and add the TEMPORARY keyword to the normal create table statement:
- CREATE TEMPORARY TABLE tmp_table (name VARCHAR(10) NOT NULL,value INTEGER NOT NULL)
Temporary tables will exist during your connection to MySQL. When you disconnect, MySQL automatically deletes the table and releases the space used. Of course, you can delete the table and release the space when it is still connected.
- DROP TABLE tmp_table
If the table named tmp_table already exists in the Database when you create a temporary table named tmp_table, it is necessary for the temporary Mysql table to be blocked and hidden) Non-temporary table tmp_table.
If you declare that the temporary table is a HEAP table, MySQL also allows you to specify to create it in memory:
- CREATE TEMPORARY TABLE tmp_table (name VARCHAR(10) NOT NULL,value INTEGER NOT NULL) TYPE = HEAP
Because the HEAP table is stored in the memory, you may query it faster than the temporary table on the disk. However, HEAP tables are somewhat different from general tables and have their own restrictions. For more information, see the MySQL reference manual.
As previously suggested, you should test temporary tables to see if they are faster than running queries on a large number of databases. If the data is well indexed, the temporary Mysql table may be a little unpleasant.