mysql复制表结构和内容
许多时候我们想复制一张表部分或者全部内容,或者只复制一张表的框架,这种需求应该说我们很常见。
其实想要实现这种需求十分简单。
表一:
mysql> select * from student_info;
+----+-----------+------+
| id | name | sex |
+----+-----------+------+
| 1 | 科比 | 男 |
| 2 | 毛线 | 女 |
| 3 | 黄鱼 | 男 |
| 4 | 子栋 | 男 |
| 5 | 子豪 | 女 |
| 6 | 小鸟 | 男 |
| 7 | 星爷 | 男 |
| 8 | 戴鹏 | 男 |
| 9 | 秦子琪 | 女 |
+----+-----------+------+
9 rows in set (0.00 sec)
student_info
表二:
mysql> select * from student_addr;
+--------+--------------+
| name | addr |
+--------+--------------+
| 科比 | 湖北罗田 |
| 小鸟 | 湖北襄阳 |
| 子豪 | 江苏扬州 |
| 毛线 | 湖北孝感 |
| 子栋 | 湖北洪湖 |
| 黄鱼 | 湖北罗田 |
+--------+--------------+
6 rows in set (0.00 sec)
student_addr
表三:
mysql> select * from student_score;
+--------+-------+-------+--------+
| name | MYSQL | LIUNX | python |
+--------+-------+-------+--------+
| 科比 | 56 | 87 | 74 |
| 毛线 | 87 | 95 | 78 |
| 小鸟 | 60 | 78 | 87 |
| 子豪 | 54 | 67 | 57 |
| 子栋 | 90 | 95 | 94 |
| 黄鱼 | 78 | 69 | 90 |
| 星爷 | 24 | 45 | 42 |
+--------+-------+-------+--------+
7 rows in set (0.00 sec)
student_score
需求一:我想要一张新的学生信息表,表名new_student_info,只想要湖北的同学的信息。
SQL语句:create table new_student_info (select * from student_addr where addr like '湖北%');
mysql> create table new_student_info (select * from student_addr where addr like '湖北%');
Query OK, 5 rows affected (0.01 sec)
Records: 5 Duplicates: 0 Warnings: 0 mysql> select * from new_student_info;
+--------+--------------+
| name | addr |
+--------+--------------+
| 科比 | 湖北罗田 |
| 小鸟 | 湖北襄阳 |
| 毛线 | 湖北孝感 |
| 子栋 | 湖北洪湖 |
| 黄鱼 | 湖北罗田 |
+--------+--------------+
5 rows in set (0.00 sec)
执行结果
需求二:我想复制表三的框架,表名new_student_score.
SQL语句:create table new_student_score select * from student_score where 1=2;
mysql> create table new_student_score select * from student_score where 1=2; #where后面的条件随便写
Query OK, 0 rows affected (0.01 sec)
Records: 0 Duplicates: 0 Warnings: 0 mysql> select * from new_student_score; #框架存在
Empty set (0.00 sec) mysql> desc new_student_score;
+--------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+----------+------+-----+---------+-------+
| name | char(10) | YES | | NULL | |
| MYSQL | int(4) | YES | | NULL | |
| LIUNX | int(4) | YES | | NULL | |
| python | int(4) | YES | | NULL | |
+--------+----------+------+-----+---------+-------+
4 rows in set (0.01 sec)
执行结果
需求三:一张新的表,囊括所有信息,表名info_all
SQL语句:
mysql> create table info_all
-> select new.id,new.name,new.sex,new.addr,sc.python,sc.MYSQL,sc.LIUNX
-> from (
-> select student_info.id,student_info.name,student_info.sex,student_addr.addr
-> from student_info left join student_addr
-> on student_info.name = student_addr.name) as new
-> left join student_score as sc on new.name=sc.name;
mysql> select * from info_all;
+----+-----------+------+--------------+--------+-------+-------+
| id | name | sex | addr | python | MYSQL | LIUNX |
+----+-----------+------+--------------+--------+-------+-------+
| 1 | 科比 | 男 | 湖北罗田 | 74 | 56 | 87 |
| 2 | 毛线 | 女 | 湖北孝感 | 78 | 87 | 95 |
| 3 | 黄鱼 | 男 | 湖北罗田 | 90 | 78 | 69 |
| 4 | 子栋 | 男 | 湖北洪湖 | 94 | 90 | 95 |
| 5 | 子豪 | 女 | 江苏扬州 | 57 | 54 | 67 |
| 6 | 小鸟 | 男 | 湖北襄阳 | 87 | 60 | 78 |
| 7 | 星爷 | 男 | NULL | 42 | 24 | 45 |
| 8 | 戴鹏 | 男 | NULL | NULL | NULL | NULL |
| 9 | 秦子琪 | 女 | NULL | NULL | NULL | NULL |
+----+-----------+------+--------------+--------+-------+-------+
9 rows in set (0.00 sec)
执行结果
mysql复制表结构和内容的更多相关文章
- MySQL复制表结构和内容到另一张表(转)
MySQL不要看它小,一个开源的产物,要学习它的东西真的很多.而它的一切是SQL Server无法比拟的. 复制表结构及数据到新表 create table 新表 select * from 旧表 只 ...
- MySQL复制表结构和内容到另一个表中
一:(低版本的mysql不支持,mysql4.0.25 不支持,mysql5已经支持了)1.复制表结构到新表CREATE TABLE 新表LIKE 旧表 2.复制旧表的数据到新表(假设两个表结构一样) ...
- Mysql 复制表结构 及其表的内容
顺便转一下Mysql复制表结构.表数据的方法: 1.复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表 这种方法会将oldtable中所有的内容都拷贝过来,当然我们 ...
- MySQL复制表结构表数据
MySQL复制表结构 表数据 1.复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete ...
- mysql 复制表结构(包括索引等)、表内容
=============================================== 2019/7/16_第1次修改 ccb_warlock == ...
- mysql复制表结构,复制表数据
MYSQL 复制表 show create table table_name:查看表的建表语句.该语句包含了原数据表的结构,索引等. 使用 SHOW CREATE TABLE 命令获取创建数据表(CR ...
- MySQL 复制表结构
200 ? "200px" : this.width)!important;} --> 介绍 有时候我们需要原封不动的复制一张表的表结构来生成一张新表,MYSQL提供了两种便 ...
- mysql 复制表结构、表数据的方法
From: http://blog.163.com/yaoyingying681@126/blog/static/109463675201191173221759/ MySQL 添加列,修改列,删除列 ...
- mysql复制表结构及检查表、存储过程是否存在
mysql命令行复制表结构的方法: 1.只复制表结构到新表 CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2 或者 CREATE TABLE 新表 LIKE 旧表 ...
随机推荐
- JavaScript target与currentTarget区别
1.DOM事件绑定到父元素 <!DOCTYPE html> <html lang="zh"> <head> <meta charset=& ...
- Burp Suite基本用法
从上一篇已经知道Burp Suite安装.启动方法,本章将会阐述Burp Suite抓包.重放.爆破.双参数爆破.爬虫等基本用法.同博客园看到一篇描述Burp Suite界面各个字段和按钮作用,感兴趣 ...
- mongoDB 高级查询语法
http://www.cnblogs.com/ITAres/articles/2084794.html本文参考自官方的手册:http://www.mongodb.org/display/DOCS/Ad ...
- 【SpringMVC学习10】SpringMVC对RESTfull的支持
RESTful架构,就是目前流行的一种互联网软件架构.它结构清晰.符合标准.易于理解.扩展方便,所以正得到越来越多网站的采用.RESTful架构对url进行规范,写RESTful格式的url是什么样子 ...
- web-小知识点(随记)
1.position:fixed:窗口定位的时候(在刷新页面时若未出现.得稍等一会的话,就直接把需要定位的内容写在<html>标签的首部.这样页面加载html的时候首先加载fixed定位的 ...
- asp.net core mvc视频A:笔记3-1.视图基本用法
常用介绍 注意:ViewBag是对View的封装,所以如果两者键值(Key)是一样的话,后者会覆盖前者. 新建项目,添加空控制器 小技巧-快速添加视图 控制器方法,使用ViewData和ViewBag ...
- Struts2学习之拦截器栈
© 版权声明:本文为博主原创文章,转载请注明出处 拦截器栈: - 从结构上看:拦截器栈相当于多个拦截器的组合 - 从功能上看:拦截器栈也是拦截器 默认拦截器栈: - 在struts-core.jar中 ...
- Android Studio 2.0 正式版公布啦 (首次中文翻译)
Android Studio 2.0 公布了,添加了一些新特性: 1. 更加完好的 Instant Run 2. 更快的 Android Emulator 3.GPU Debugger Preview ...
- python实现测试中常用的脚本(待完善)
一. Python操作MySQL数据库,简单的增删改查 # coding=utf-8 ''' Created on 2015年5月12日 @author: Administrator ''' impo ...
- NHibernate二级缓存(第十一篇)
NHibernate二级缓存(第十一篇) 一.NHibernate二级缓存简介 NHibernate由ISessionFactory创建,可以被所有的ISession共享. 注意NHibernate查 ...