1.新表不存在
复制表结构即数据到新表

1
2
create table new_table
select * from old_talbe;

这种方法会将old_table中所有的内容都拷贝过来,用这种方法需要注意,new_table中没有了old_table中的primary key,Extra,auto_increment等属性,需要自己手动加,具体参看后面的修改表即字段属性.
只复制表结构到新表

1
2
3
4
5
6
# 第一种方法,和上面类似,只是数据记录为空,即给一个false条件
create table new_table
select * from old_table where 1=2;
 
# 第二种方法
create table new_table like old_table;

2.新表存在
复制旧表数据到新表(假设两个表结构一样)

1
2
insert into new_table
select * from old_table;

复制旧表数据到新表(假设两个表结构不一样)

1
2
insert into new_table(field1,field2,.....)
select field1,field2,field3 from old_table;

复制全部数据

1
select * into new_table from old_table;

只复制表结构到新表

1
select * into new_talble from old_table where 1=2;

create table a like b;

create table c_relation as select c.memberId,m.merchantId,memb.phone from c_merchant as m inner join c_customer c on c.userId=m.userId inner join c_member memb on memb.id=c.memberId where memb.status=10;

由上面的使用 CREATE TABLE 表名 AS SELECT 语句可以看出:

    1:只会复制表数据和表结构,不会有任何约束。

    2:当 where 条件不成立时,只复制表结构,没有任务数据。

最新文章

  1. ArcGIS Server开发教程系列(1) Arcgis server 10.1 的安装
  2. JS的三种弹框
  3. You need tcl 8.5 or newer in order to run the Redis test
  4. 【转】Android 布局学习之——LinearLayout属性baselineAligned的作用及baseline
  5. xxx couldn't be loaded because it has not been added to the build settings.
  6. Poetize6: IncDec Sequence
  7. Java学习笔记--“==”与"equals"
  8. ibatis之##与$$的 使用
  9. HDU 1240 Asteroids!
  10. 生产都消费者模式的一个demo,消费者设置缓存
  11. tar解压
  12. Bootstrap学习 - 全局CSS样式
  13. jquery data属性的使用
  14. Unreal Engine 4(虚幻UE4)GameplayAbilities 插件入门教程(七)Ability的信息传递等
  15. protobuf 原理
  16. 第十节: 利用SQLServer实现Quartz的持久化和双机热备的集群模式 :
  17. django/python日志logging 的配置以及处理
  18. migrate数据库迁移
  19. BigDecimal四舍五入保留两位小数
  20. AspNetPager 控件使用

热门文章

  1. CSS3中的弹性布局——"em"的用法
  2. iOS检查App新版本并更新新版本
  3. java中文件的I/O操作
  4. JavaScript的个人学习随手记(三)
  5. T-SQL 常用DDL语句
  6. 使用EF自带的EntityState枚举和自定义枚举实现单个和多个实体的增删改查
  7. 【转载】PHP性能优化干货
  8. [Java入门笔记] 面向对象编程基础(二):方法详解
  9. SCCM 2012 R2安装部署过程和问题(三)
  10. 修改AndroidStudio中的Logcat中的默认设置