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 但 ...
随机推荐
- 利用ES6中的Array.find/ Array.findIndex来判断数组中已存在某个对象
前端开发过程中,我们会经常遇到这样的情景:比如选中某个指标obj,将其加入到数组checkedArr中({id: 1234, name: 'zzz', ...}),但是在将其选中之前要校验该指标是否已 ...
- idea tomcat启动乱码问题
配置idea的安装文件的编码: JetBrains\IntelliJ IDEA 2016.3\bin中配置文件idea.exe.vmoptions.idea64.exe.vmoptions 添加 -D ...
- python 返回列表中的偶数
def is_even_num(l): enum = [] for n in l: == : enum.append(n) return enum print(is_even_num([, , , , ...
- css3 属性——calc()
其实在之前学习CSS3的时候,我并没有注意到有calc()这个属性,后来在看一个大牛的代码的时候看到了这个,然后就引发了后来的一系列的查找.学习,以及这篇博客的诞生.好了,废话不多说了,来干正事. 一 ...
- vue全家桶实现笔记本功能
一个通过vue实现的练手小项目,数据保存和导出通过node进行处理 成品截图: 安装vue-cli,webpack: cnpm install webpack -g cnpm install vue- ...
- 兼容360模式自动播放视频【需要flvpalyer.swf】
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://down ...
- gruntjs开发实例
Grunt是基于Node.js的项目构建工具.它可以自动运行你所设定的任务,如编译less,sass,压缩js,合拼文件等等. (一)安装nodejs环境,Grunt 0.4.x要求Node.js的版 ...
- Leetcode 63
//一维dp还是比较难写的class Solution { public: int uniquePathsWithObstacles(vector<vector<int>>&a ...
- EPANET头文件解读系列2——ENUMSTXT.H
在前一系统中介绍了text.h,回顾下,该文件包含了EPANET中所有字符串常量的定义,而ENUMSTXT.H文件则是以text.h中定义的字符串常量为基础,来对这些字符串常量进行合理的分组,形成字符 ...
- 简单地为DBNavigator填加Caption
http://bbs.2ccc.com/topic.asp?topicid=346735 http://www.cnblogs.com/GarfieldTom/archive/2010/01/18/1 ...