新浦京娱乐场官网mysql临时表的创建和使用

2019-06-16 02:08栏目:技术创新

mysql中需要通过create temporary table tablename来创建临时表,临时表常用在复杂查询时临时存放中间表数据。

创建临时表的实例

mysql> CREATE TEMPORARY TABLE SalesSummary (
    -> product_name VARCHAR(50) NOT NULL
    -> , total_sales DECIMAL(12,2) NOT NULL DEFAULT 0.00
    -> , avg_unit_price DECIMAL(7,2) NOT NULL DEFAULT 0.00
    -> , total_units_sold INT UNSIGNED NOT NULL DEFAULT 0
);
Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO SalesSummary
    -> (product_name, total_sales, avg_unit_price, total_units_sold)
    -> VALUES
    -> ('cucumber', 100.25, 90, 2);

mysql> SELECT * FROM SalesSummary;
 -------------- ------------- ---------------- ------------------ 
| product_name | total_sales | avg_unit_price | total_units_sold |
 -------------- ------------- ---------------- ------------------ 
| cucumber     |      100.25 |          90.00 |                2 |
 -------------- ------------- ---------------- ------------------ 
1 row in set (0.00 sec)

临时表的生命周期是session,使用show tables命令查看表时不会有临时表。

mysql临时表的存储引擎

mysql临时表的默认存储引擎是服务器指定的默认存储引擎,可以通过下面语句来证实:

create temporary table test_temp (id int not null,name varchar(100) not null);
show create table test_temp;

输出:

'test_temp', 'CREATE TEMPORARY TABLE `test_temp` (
  `id` int(11) NOT NULL,
  `name` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8'

删除mysql的临时表:

删除临时表和删除正式表是一样的同样是使用drop table语句,如下例子:

DROP TABLE SalesSummary;

版权声明:本文由新浦京娱乐站_新浦京娱乐场官网_新浦京娱乐发布于技术创新,转载请注明出处:新浦京娱乐场官网mysql临时表的创建和使用