许多时候我们想复制一张表部分或者全部内容,或者只复制一张表的框架,这种需求应该说我们很常见。

其实想要实现这种需求十分简单。

表一:

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复制表结构和内容的更多相关文章

  1. MySQL复制表结构和内容到另一张表(转)

    MySQL不要看它小,一个开源的产物,要学习它的东西真的很多.而它的一切是SQL Server无法比拟的. 复制表结构及数据到新表 create table 新表 select * from 旧表 只 ...

  2. MySQL复制表结构和内容到另一个表中

    一:(低版本的mysql不支持,mysql4.0.25 不支持,mysql5已经支持了)1.复制表结构到新表CREATE TABLE 新表LIKE 旧表 2.复制旧表的数据到新表(假设两个表结构一样) ...

  3. Mysql 复制表结构 及其表的内容

    顺便转一下Mysql复制表结构.表数据的方法: 1.复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表 这种方法会将oldtable中所有的内容都拷贝过来,当然我们 ...

  4. MySQL复制表结构表数据

    MySQL复制表结构 表数据 1.复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete ...

  5. mysql 复制表结构(包括索引等)、表内容

    =============================================== 2019/7/16_第1次修改                       ccb_warlock == ...

  6. mysql复制表结构,复制表数据

    MYSQL 复制表 show create table table_name:查看表的建表语句.该语句包含了原数据表的结构,索引等. 使用 SHOW CREATE TABLE 命令获取创建数据表(CR ...

  7. MySQL 复制表结构

    200 ? "200px" : this.width)!important;} --> 介绍 有时候我们需要原封不动的复制一张表的表结构来生成一张新表,MYSQL提供了两种便 ...

  8. mysql 复制表结构、表数据的方法

    From: http://blog.163.com/yaoyingying681@126/blog/static/109463675201191173221759/ MySQL 添加列,修改列,删除列 ...

  9. mysql复制表结构及检查表、存储过程是否存在

    mysql命令行复制表结构的方法: 1.只复制表结构到新表 CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2  或者 CREATE TABLE 新表 LIKE 旧表 ...

随机推荐

  1. eclispe查看jdk源码后特别卡顿导致未响应解决

    第一步:Eclipse -> Preferences -> General -> Startup and Shutdown.不要勾选 RSE UI. 第二步:Eclipse -> ...

  2. JavaScript 数组去重 方法汇总

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  3. MySQL + Amoeba 负载均衡、主从备份方案

    1.  基本环境 4台内网虚拟机的操作系统都是ubuntu-14.04.4 64位 IP为:192.168.169.11.192.168.169.12.192.168.169.13.192.168.1 ...

  4. java检测http请求的ip地址 Java问题通用解决代码

    以后再用到的话,至少能起个参考作用 java实现,struts2的Action中,依赖HttpServletRequest     package net.dookoo.web.action;   i ...

  5. codeforces #364d As Fast As Possible

    题意:一群学生,要到离这里为l的地方去.有一辆车,车只有k个座位.人和车的速度分别v1,v2,问你所有人到达的最小时间. 思路:数学题.最小时间就是要求所有同学同时到达.每个同学最多上一次车.那么显然 ...

  6. WAF绕过方法

    1.大小写绕过 这个大家都很熟悉,对于一些太垃圾的WAF效果显著,比如拦截了union,那就使用Union UnIoN等等绕过. 2.简单编码绕过 比如WAF检测关键字,那么我们让他检测不到就可以了. ...

  7. Linux安装php-7.0.16,完成php和apache的配置

    Linux安装php-7.0.16,完成php和apache的配置     版本:php-7.0.16.tar.gz,libxml2-2.9.2.tar.gz(php需要它的支持,首先安装它) 说明 ...

  8. Codeforces 38G Queue 伸展树

    题目链接:点击打开链接 题意: 给定n个人来排队 每一个人有2个參数.身份优先级和脸皮厚度 == 来的那个人会排到队尾 假设这个人的优先级比他前面那个人的优先级大就会和前面那个人交换位置. 交换一次脸 ...

  9. 【Python+selenium Wendriver API】之操作警告和弹出框

    参考文章: <Python+Selenium笔记(九):操作警告和弹出框>

  10. PHP SOCKET编程 .

    1. 预备知识 一直以来很少看到有多少人使用php的socket模块来做一些事情,大概大家都把它定位在脚本语言的范畴内吧,但是其实php的socket模块可以做很多事情,包括做ftplist,http ...