mysql-10临时表、复制表
1.创建临时表
mysql临时表在我们需要保存一些临时数据时非常有用。
临时表只在当前连接可见,当关闭连接时,mysql会自动删除表并释放所有空间。
如果使用客户端创建临时表,只有在管不客户端程序时才会销毁临时表,当然也可以手动销毁。
create TEMPORARY table `SalesSummary`(`producnt name` varchar(50) 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);
insert into SalesSummary values('cucumber',100.25,90,2);
select * from SalesSummary;
-- 删除临时表
drop table SalesSummary;

使用 show tables; 查看当前数据表时,临时表是无法看的
2.mysql复制表:复制mysql的数据表,包括表的结构、索引、默认值
复制表有3种情形:
- 1.完整复制
- 2.部分复制
- 3.额外字段+复制表
2.1完全复制
2.1.1方法1:获取表结构,创建数据表,插入数据
-- 1.获取数据表的完整结构
show create table csj_tbl \G;

-- 2.创建数据表
CREATE TABLE `clone_csj_tbl` (
`csj_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`csj_title` varchar(100) NOT NULL,
`csj_author` varchar(40) NOT NULL,
`submission_date` date DEFAULT NULL,
PRIMARY KEY (`csj_id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
-- 3.复制数据
insert into clone_csj_tbl select * from csj_tbl;
select * from clone_csj_tbl;
2.1.2 方法2:使用like语句依照原表创建,再插入数据
-- 根据模版,创建新表
create table clone_csj_tbl like csj_tbl;
-- 插入数据
insert into clone_csj_tbl select * from csj_tbl;
2.1.3 方法3:使用as语句直接创建表
create table clone_csj_tb1 as (select * from csj_tbl);
2.2复制表中的一部分字段
create table clone_csj_tbl1 as (select csj_id,csj_title from csj_tbl);
select * from clone_csj_tbl1;

更多用法:
```#sql
-- 将列重命名
create table clone_csj_tbl1 as (select csj_id, csj_title as title from csj_tbl);
-- 拷贝一部分数据
create table clone_csj_tbl1 as (select csj_id,csj_title from csj_tbl where csj_id
mysql-10临时表、复制表的更多相关文章
- MySQL 临时表和复制表
MySQL 临时表在我们需要保存一些临时数据时是非常有用的.临时表只在当前连接可见,当关闭连接时,Mysql会自动删除表并释放所有空间. 临时表在MySQL 3.23版本中添加,如果你的MySQL版本 ...
- MySQL 复制表
MySQL 复制表 如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TABLE ... SELECT 命令,是无法实现的. 本文将为大家介绍如何完整 ...
- 【MYSQL笔记2】复制表,在已有表的基础上设置主键,insert和replace
之前我自己建立好了一个数据库xscj:表xs是已经定义好的 具体的定义数据类型如下: 为了复制表xs,我们新建一个表名为xstext,使用下列语句进行复制xs,或者说是备份都可以: create ta ...
- 二十七、MySQL 复制表
MySQL 复制表 如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TABLE ... SELECT 命令,是无法实现的. 本章节将为大家介绍如何完 ...
- MySQL数据库之-foreign key 外键(一对多、多对多、一对一)、修改表、复制表
摘要: 外键 一对多 外键 多对多 外键 一对一 --------------------------------------------------------------------------- ...
- DB-MySQL:MySQL 复制表
ylbtech-DB-MySQL:MySQL 复制表 1.返回顶部 1. MySQL 复制表 如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TA ...
- 吴裕雄--天生自然MySQL学习笔记:MySQL 复制表
如果需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TABLE ... SELECT 命令,是无法实现的. 如何完整的复制MySQL数据表,步骤如下: 使用 ...
- 吴裕雄 26-MySQL 复制表
如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TABLE ... SELECT 命令,是无法实现的.本章节将为大家介绍如何完整的复制MySQL数据 ...
- 怎样用sql语句复制表table1到表table2的同时复制主键
原文:怎样用sql语句复制表table1到表table2的同时复制主键 在从table1表复制到table2的时候,我们会用语句: select * into table2 from table1 但 ...
随机推荐
- APP AutoTestCaseID
public class AutoTestCaseID { ElementExist el = new ElementExist(); static AutoTestExcelFile ft = ne ...
- .net core开发 (一)
1..net core: 是微软开发的另外一个可以跨平台的.net 2..net framework,.net core, mono的关系三者都是.net在不同操作系统的实现 3. .net core ...
- install ros-indigo-filters
CMake Warning at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake: (find_package): Could not fi ...
- Spring IOC 源码简单分析 03 - 循环引用
### 准备 ## 目标 了解 Spring 如何处理循环引用 ##测试代码 gordon.study.spring.ioc.IOC03_CircularReference.java ioc03. ...
- Tensorflow一些常用基本概念与函数(二)
1.tensorflow的基本运作 为了快速的熟悉TensorFlow编程,下面从一段简单的代码开始: import tensorflow as tf #定义‘符号’变量,也称为占位符 a = tf. ...
- 谈谈oracle里的join、left join、right join、full join-版本2
--1.left join 左表为主表,左表返回全部数据,右表只返回与左表相匹配的数据select t1.fpdm,t1.fphm ,t1.zjr,t1.zjsj,t1.zjjx,t1.zjje ...
- Xcode6中手动添加Precompile Prefix Header
Xcode5中创建一个工程的时候,系统会自动创建一个以以工程名为名字的pch(Precompile Prefix Header)文件,开发的过程中可以将广泛使用的头文件以及宏包含在该文件下,编译器就会 ...
- L200
Last week, I read a story about a 34-year-old British woman who is extremely afraid of metal forks.S ...
- 探究js正则匹配方法:match和exec
match是字符串方法,写法为:str.match(reg) exec是正则表达式方法,写法为:reg.exec(str) match和exec在匹配成功时返回的都是数组,在没有匹配上时返回的都是nu ...
- ADS1.2使用
ADS编译错误Error : A1163E: Unknown opcode ARM汇编指令不支持顶格写,否则不能识别,指令前加上空格即可. 使用for(;;;)//死循环,编译报错如下,说是该语句有错 ...