首页  >  文章  >  数据库  >  在MySQL中创建一个与另一个表匹配的表?

在MySQL中创建一个与另一个表匹配的表?

PHPz
PHPz转载
2023-08-23 19:13:091257浏览

在MySQL中创建一个与另一个表匹配的表?

要在 MySQL 中创建与另一个表匹配的表,请使用带有 LIKE 运算符的 CREATE TABLE 命令。语法如下 -

create table yourNewTableName like yourOldTableName;

上述语法创建表的结构。

如果您想要所有记录,则使用 INSERT INTO….SELECT *FROM 命令。语法如下 -

insert into yourNewTableName select *from yourOldTableName.

我有一个旧表和一些数据 -

mysql> create table WholeWordMatchDemo
   −> (
   −> Words varchar(200)
   −> );
Query OK, 0 rows affected (0.84 sec)

首先,我们将创建一个表结构。查询如下 -

mysql> create table NewTableDuplicate Like WholeWordMatchDemo;
Query OK, 0 rows affected (0.62 sec)

现在可以通过 show 命令检查表结构是否已创建。查询如下 -

mysql> show create table NewTableDuplicate;

以下是输出 -

+-------------------+---------------------------------------------------------------------------------------------------------------------------------------------+
| Table             | Create Table                                                                                                                                |
+-------------------+---------------------------------------------------------------------------------------------------------------------------------------------+
| NewTableDuplicate | CREATE TABLE `newtableduplicate` (`Words` varchar(200) DEFAULT NULL) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci |
+-------------------+---------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

复制新表中名为“NewTableDuplicate”的所有记录。查询如下,将所有数据复制到新表中 -

mysql> insert into NewTableDuplicate select *from WholeWordMatchDemo;
Query OK, 3 rows affected (0.19 sec)
Records: 3 Duplicates: 0 Warnings: 0

现在您可以借助 SELECT 语句检查新表中是否存在所有记录。查询如下 −

mysql> select *from NewTableDuplicate;

以下是输出 −

+----------------------+
| Words                |
+----------------------+
| My Name is John      |
| Carol                |
| My Name is Johnson   |
+----------------------+
3 rows in set (0.00 sec)

检查旧表是否有相同的记录 −

mysql> select *from WholeWordMatchDemo;

以下是输出 −

+----------------------+
| Words                |
+----------------------+
| My Name is John      |
| Carol                |
| My Name is Johnson   |
+----------------------+
3 rows in set (0.00 sec)

以上是在MySQL中创建一个与另一个表匹配的表?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除