select into from和insert into select的使用举例详解

 更新时间:2023年04月21日 11:23:38   作者:Spring的思念  
select into from和insert into select都是用来复制表,下面这篇文章主要给大家介绍了关于select into from和insert into select使用的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

1. SELECT INTO 语句

用途:SELECT INTO 语句从一个表复制数据,然后把数据插入到另一个新表中,表结构与查询结构一致。

PS:MySQL不支持SELECT INTO语法

1.1 SELECT INTO 语法

复制所有的列插入到新表中。

SELECT *
INTO newtable 
FROM table1;

或者只复制希望的列插入到新表中:

SELECT column_name(s)
INTO newtable 
FROM table1;

提示:新表将会使用 SELECT 语句中定义的列名称和类型进行创建。以使用 AS 子句来应用新名称。

2. INSERT INTO SELECT 语句

INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中。

2.1 INSERT INTO SELECT 语法

从一个表中复制所有的列插入到另一个已存在的表中:

INSERT INTO table2
SELECT * FROM table1;

只复制希望的列插入到另一个已存在的表中:

INSERT INTO table2
(column_name(s))
SELECT column_name(s)
FROM table1;

3. select into from 和 insert into select 区别

select into from 要求目标表不存在,因为在插入时会自动创建;

insert into select from 要求目标表存在

4. 复制表结构及其数据

create table table_name_new 
as 
select * from table_name_old;

5.只复制表结构

原理就是使得where后边条件为假。

create table table_name_new as select * from table_name_old where 1=2;

或者

create table table_name_new like table_name_old;

6.只复制表数据

6.1 两个表结构一样

insert into table_name_new select * from table_name_old;

6.2 两个表结构不一样

insert into table_name_new(column1,column2...) select column1,column2... from table_name_old;

只能插入相同字段数据。

总结

到此这篇关于select into from和insert into select使用的文章就介绍到这了,更多相关select into from和insert into select内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • CentOS 7下MySQL服务启动失败的快速解决方法

    CentOS 7下MySQL服务启动失败的快速解决方法

    CentOS 7下MySQL服务启动失败怎么办?下面小编就为大家带来一篇CentOS 7下MySQL服务启动失败的快速解决方法。现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-03-03
  • 解析mysqldump的delay-insert选项

    解析mysqldump的delay-insert选项

    本篇文章是对mysqldump的delay-insert选项进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • MYSQL ZIP免安装版配置步骤及图形化管理工具mysql-workbench

    MYSQL ZIP免安装版配置步骤及图形化管理工具mysql-workbench

    在 windows7 64位操作系统下配置mysql-5.5.25-winx64 (免安装版),记录步骤如下
    2014-03-03
  • MySQL Binlog日志写入及文件操作

    MySQL Binlog日志写入及文件操作

    这篇文章主要为大家介绍了MySQL Binlog日志写入及文件操作详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • mysql 多个字段拼接的实例详解

    mysql 多个字段拼接的实例详解

    这篇文章主要介绍了mysql 多个字段拼接的实例详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • mysql 5.5 安装配置简单教程

    mysql 5.5 安装配置简单教程

    这篇文章主要为大家详细介绍了mysql 5.5 安装配置简单教程,纯文字描述mysql 5.5 安装配置方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • MySQL因大事务导致的Insert慢实例分析

    MySQL因大事务导致的Insert慢实例分析

    这篇文章主要给大家介绍了关于MySQL因大事务导致Insert慢的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-10-10
  • MYSQL跨服务器同步数据经验分享

    MYSQL跨服务器同步数据经验分享

    这篇文章主要介绍了MYSQL跨服务器同步数据详细过程,需要的朋友可以参考下
    2014-03-03
  • MySQL 8.0 可以操作 JSON 了

    MySQL 8.0 可以操作 JSON 了

    这篇文章主要介绍MySQL 8.0 如何操作 JSON ,经过漫长的测试,即将整体迁移至Mysql8.0; Mysql8.0 对于Json操作新增/优化了很多相关Json的API操作; 阅读了一下官方文档,虽然绝大多数的JSON操作都是应用层完成,下面来看文章的详细内容吧
    2021-10-10
  • 浅谈MySQL数据库表锁了怎么解锁

    浅谈MySQL数据库表锁了怎么解锁

    在使用 MySQL 数据库时,有时候会发生某个表被锁住的情况,这可能会导致其他用户无法对该表进行读写操作,影响系统的正常运行,本文主要介绍了浅谈MySQL数据库表锁了怎么解锁,感兴趣的可以了解一下
    2023-10-10

最新评论