当前位置: 首页 > wzjs >正文

宁夏企业网站建设专业的网站制作

宁夏企业网站建设,专业的网站制作,便宜,0资本建设网站MySQL中的CREATE TABLE LIKE和CREATE TABLE SELECT CREATE TABLE LIKECREATE TABLE SELECT CREATE TABLE LIKE CREATE TABLE ... LIKE可以用来复制表结构,源表上的索引和约束也会复制。CREATE TABLE ... LIKE不能复制表数据。CREATE TABLE ... LIKE只能复制基表&…

MySQL中的CREATE TABLE LIKE和CREATE TABLE SELECT

  • CREATE TABLE LIKE
  • CREATE TABLE SELECT

CREATE TABLE LIKE

  • CREATE TABLE ... LIKE可以用来复制表结构,源表上的索引和约束也会复制。
  • CREATE TABLE ... LIKE不能复制表数据
  • CREATE TABLE ... LIKE只能复制基表,不能复制视图
  • CREATE TABLE ... LIKE可以复制CHECK约束,但是复制后的约束名称是自动生成的。
  • CREATE TABLE ... LIKE不能复制外键约束,也不会保留DATA DIRECTORYINDEX DIRECTORY表创建参数。
  • CREATE TABLE ... LIKE不会复制表的临时属性。要复制临时表请使用CREATE TEMPORARY TABLE LIKE
  • 当源表被LOCK TABLES锁定时,CREATE TABLE LIKE语句无法成功执行。

用法示例:

CREATE TABLE t1 LIKE t2;
CREATE TEMPORARY TABLE t1 LIKE t2;

CREATE TABLE SELECT

  • CREATE TABLE ... SELECT可以用来复制表结构,但不会复制索引(主键也不会)。
  • CREATE TABLE ... SELECT可以复制表数据(可以通过WHERE过滤)。
  • CREATE TABLE ... SELECT可以复制基表,也可以复制视图。
  • CREATE TABLE ... SELECT不能复制外键约束。
  • CREATE TABLE ... SELECT支持在建表时定义字段,从源表复制过来的不同名字段会作为新增字段,同名的字段则会被覆盖。
  • CREATE TABLE ... SELECT支持在建表时为字段定义约束和索引。

用法示例:

CREATE TABLE t1 SELECT * FROM t2 where 1=2;             --仅复制表结构
CREATE TABLE t1 SELECT * FROM t2;                       --复制全量数据
CREATE TABLE t1 SELECT name,age FROM t2 where age>30;   --复制部分数据--复制另外两张表关联查询的结果集
CREATE TABLE t1SELECT artist.name, COUNT(work.artist_id) AS number_of_worksFROM artist LEFT JOIN work ON artist.id = work.artist_idGROUP BY artist.id;--复制的列作为新增字段
CREATE TABLE t1 (a int) SELECT name,age FROM t2;  --复制的不同列作为新增字段,同名的列被覆盖      
CREATE TABLE t1 (a int, name varchar(30)) SELECT name,age FROM t2; --为复制过来的字段定义索引和约束
CREATE TABLE t1 (name varchar(30) not null) SELECT name,age FROM t2; 
CREATE TABLE t1 (unique(employee_id)) SELECT employee_id,name FROM t3; 

实验:

SQL> create table t2 (name varchar(30), age int not null);
SQL> create table t3 (employ_id int, name varchar(30), age int);
SQL> insert into t2 values ('Joe',35),('Rachel',31),('Monica',33);
SQL> insert into t3 values (11,'MJoe',35),(12,'MRachel',31),(13,'MMonica',33);
SQL> commit;SQL> select * from t2;
+--------+-----+
| name   | age |
+--------+-----+
| Joe    |  35 |
| Rachel |  31 |
| Monica |  33 |
+--------+-----+
3 rows in set (0.00 sec)SQL> select * from t3;
+-----------+---------+------+
| employ_id | name    | age  |
+-----------+---------+------+
|        11 | MJoe    |   35 |
|        12 | MRachel |   31 |
|        13 | MMonica |   33 |
+-----------+---------+------+
3 rows in set (0.00 sec)--仅复制表结构
SQL> CREATE TABLE t1 SELECT * FROM t2 where 1=2; 
Query OK, 0 rows affected (0.11 sec)
Records: 0  Duplicates: 0  Warnings: 0SQL> select * from t1;
Empty set (0.00 sec)SQL> desc t1;
+-----------+-----------------+------+-----+---------+--------------------------+
| Field     | Type            | Null | Key | Default | Extra                    |
+-----------+-----------------+------+-----+---------+--------------------------+
| my_row_id | bigint unsigned | NO   | PRI | NULL    | auto_increment INVISIBLE |
| name      | varchar(30)     | YES  |     | NULL    |                          |
| age       | int             | NO   |     | NULL    |                          |
+-----------+-----------------+------+-----+---------+--------------------------+
3 rows in set (0.00 sec)--复制的列作为新增字段
SQL> CREATE TABLE t1 (a int) SELECT name,age FROM t2; 
Query OK, 3 rows affected (0.07 sec)
Records: 3  Duplicates: 0  Warnings: 0SQL> select * from t1;
+------+--------+-----+
| a    | name   | age |
+------+--------+-----+
| NULL | Joe    |  35 |
| NULL | Rachel |  31 |
| NULL | Monica |  33 |
+------+--------+-----+
3 rows in set (0.00 sec)--复制的不同列作为新增字段,同名的列被覆盖      
SQL> CREATE TABLE t1 (a int, name varchar(30)) SELECT name,age FROM t2; 
Query OK, 3 rows affected (0.07 sec)
Records: 3  Duplicates: 0  Warnings: 0SQL> select * from t1;
+------+--------+-----+
| a    | name   | age |
+------+--------+-----+
| NULL | Joe    |  35 |
| NULL | Rachel |  31 |
| NULL | Monica |  33 |
+------+--------+-----+
3 rows in set (0.00 sec)--为复制过来的字段定义约束
SQL> CREATE TABLE t1 (name varchar(40) not null default 'Tony') SELECT name,age FROM t2; 
Query OK, 3 rows affected (0.13 sec)
Records: 3  Duplicates: 0  Warnings: 0SQL> desc t1;
+-----------+-----------------+------+-----+---------+--------------------------+
| Field     | Type            | Null | Key | Default | Extra                    |
+-----------+-----------------+------+-----+---------+--------------------------+
| my_row_id | bigint unsigned | NO   | PRI | NULL    | auto_increment INVISIBLE |
| name      | varchar(40)     | NO   |     | Tony    |                          |
| age       | int             | NO   |     | NULL    |                          |
+-----------+-----------------+------+-----+---------+--------------------------+
3 rows in set (0.00 sec)--为复制过来的字段定义索引
SQL> CREATE TABLE t1 (unique(employ_id)) SELECT employ_id,name FROM t3;
Query OK, 3 rows affected (0.07 sec)
Records: 3  Duplicates: 0  Warnings: 0SQL> desc t1;
+-----------+-----------------+------+-----+---------+--------------------------+
| Field     | Type            | Null | Key | Default | Extra                    |
+-----------+-----------------+------+-----+---------+--------------------------+
| my_row_id | bigint unsigned | NO   | PRI | NULL    | auto_increment INVISIBLE |
| employ_id | int             | YES  | UNI | NULL    |                          |
| name      | varchar(30)     | YES  |     | NULL    |                          |
+-----------+-----------------+------+-----+---------+--------------------------+
3 rows in set (0.01 sec)

References
【1】https://dev.mysql.com/doc/refman/8.0/en/create-table-select.html
【2】https://dev.mysql.com/doc/refman/8.0/en/create-table-like.html

http://www.dtcms.com/wzjs/570536.html

相关文章:

  • 做热图的在线网站网站建设选题
  • 企业三合一建站公司具体该怎么找知名app开发公司
  • 不懂的做网站wordpress使用培训
  • 如何给企业做网站无锡做网站首选众诺
  • 深圳专业网站开发公司盐城网站建设咨询
  • 指数网站平原县网站seo优化排名
  • 阿里云官方网站东莞建站模板搭建
  • 网站怎么做IPv6福永镇网站建设
  • 网商网站怎么做上海网络维护找哪家好
  • 如何将网站挂载域名网上网城网站
  • 手机网站设计论文wordpress中文安装竟然是英文的
  • 专业微网站建设公司首选公司wordpress点击图片上传
  • 浙江网上职工之家seo成创网络
  • 潍坊网站开发招生信息wordpress主题有什么用
  • 广州专业做外贸网站建设企业网站建设的报价
  • 建外贸网站的服务器连接wordpress
  • 网站建设方案的企业百度软件中心官网
  • 如何根据网址攻击网站中国航发网上电子商城网址
  • 营销网站是什么意思银川做网站最好的公司
  • 定制网站建设流程北京市建设工程信息网ic卡
  • 不用写代码做网站wordpress 迅雷
  • 旧金山网站建设微信公众平台网站建设
  • 浦东网站建设价格珠海网站策划公司
  • 做小说网站做国外域名还是国内的好处微信做购物网站怎么抽佣
  • 哪个网络公司做网站好点wordpress demo数据
  • 苍南县住房和城乡规划建设局网站凡客诚品陈年
  • 网站建设百度推广说词国际新闻最新消息今天2024年
  • 建一个网站需要购买域名 虚拟主机个人网站制作教程视频
  • 表白网站制作平台浙江省住房建设厅网站
  • 镇江有哪些网站最容易做流量的网站